نمایش نتایج 1 تا 27 از 27

نام تاپیک: گير شر كردن به اين ميگن(كمك كمك در مورد sql server)

  1. #1
    کاربر دائمی آواتار ali682344
    تاریخ عضویت
    بهمن 1384
    محل زندگی
    تهرلن
    سن
    35
    پست
    296

    گير شر كردن به اين ميگن(كمك كمك در مورد sql server)

    با سلام خدمت همه دوستان

    من مي خوام برنامه خودم كه با اكسس هست رو به sql server 2000 تبديل كنم كه اين كارو فقط به خاطر مسئله همزماني در شبكه انجام مي دم
    پايگاه دادشو تبديل كردم
    مي خوام بدونم sql به طور خودكار اين مسئله رو تشخيص مي ده يا نياز به كدنويسي چيزي داره
    اگه امكان داره يه نمونه بذاريد


    اين شر رو از سر من كم كنيد
    فداتون بشم منتظرم

  2. #2
    کاربر دائمی آواتار ali682344
    تاریخ عضویت
    بهمن 1384
    محل زندگی
    تهرلن
    سن
    35
    پست
    296

    نقل قول: گير شر كردن به اين ميگن(كمك كمك در مورد sql server)

    كسي نيست كمك كنه
    تو رو خدا كمك كنين:

  3. #3
    کاربر دائمی آواتار HjSoft
    تاریخ عضویت
    خرداد 1386
    محل زندگی
    مشهد
    پست
    1,160

    نقل قول: گير شر كردن به اين ميگن(كمك كمك در مورد sql server)

    متوجه نشدم .. .بیشتر توضیح بده . من هم دقیقا همین کار رو کردم و بانک اکسسم رو به sql تبدیل کردم . هیچ مشکلی پیش نیامد و هیچ کد خاصی هم نمی خواد فقط کافیه یک کانکشن استرینگ درست بهش بدی .

  4. #4
    کاربر دائمی آواتار ali682344
    تاریخ عضویت
    بهمن 1384
    محل زندگی
    تهرلن
    سن
    35
    پست
    296

    نقل قول: گير شر كردن به اين ميگن(كمك كمك در مورد sql server)

    ضمن تبريك سال نو

    مشكلم اينه كه sql رو چطوري مي تونم براي اين مشكلات تنظيم كنم:
    1- مثلا من يه فيلد autonumber دارم وقتي كليد add زده مي شه اون فيلد مقدار 1 ميگيره و سيستم هاي بعدي هم همون مقدار رو دارن و همه با يك كد ذخيره ميشن البته يكي از دوستان براي پايگاه اكسس گفتند كا با كد نويسي مي توني هنگام ذخيره چك كني ببيني اين كد ثبت شده يا نه اگه ثبت شده بود اون كدو + 1 كن
    ولي براي من خوب جواب نميده
    ايا sql به طور خودكار جلوگيري مي كنه يا بايد كد نويسي شه
    2-مثلا در ان واحد يكي مي تونه يه ركورد و حذف كنه و يه نفر ديگه رو همون ركورد داره عمل ويرايش انجام ميده



    بازم از پاسختون ممنونم
    آخرین ویرایش به وسیله ali682344 : یک شنبه 01 فروردین 1389 در 19:55 عصر

  5. #5
    کاربر دائمی آواتار HjSoft
    تاریخ عضویت
    خرداد 1386
    محل زندگی
    مشهد
    پست
    1,160

    نقل قول: گير شر كردن به اين ميگن(كمك كمك در مورد sql server)

    جواب 1 : اگه درست متوجه شده باشم ، شما توی برنامه تون یک دکمه دارید به نام افزودن که کاربر روی اون که کلیک میکنه ، قسمت ورود اطلاعات جدید باز میشه و کاربر می تونه اطلاعات جدید رو وارد کنه ، یعنی در حقیقت با کلیک روی افزودن addnew رو به رکوردست بانک میفرستین ... خوب شما به جای اون کار تکست ها رو از بانک جدا کنید و به کاربر اجازه بدین ، که بتونه هرچی خواست وارد کنه ، بعد یک دکمه بزارید به جای افزودن ، که که کاربر روی اون کلیک کرد ، همزمان addnew به بانک فرستاده شده و مقدار هایی که کاربر در تکست ها وارد کرده به بانک اضافه بشن و با یک msgbox ، کد شناسایی رو به کاربر اعلام کنید . این راهیه که خودم تا حالا استفاده می کردم . کد اون دکمه میشه به صورت زیر :
    rst.addnew
    rst.field("name") = txt_name.text
    rst.update
    msgbox rst.field("id")


    برای سوال دومتون هم من جوابی ندارم ، برام پیش نیامده !


    امیدوارم که متوحه شده باشی

  6. #6
    کاربر دائمی آواتار ali682344
    تاریخ عضویت
    بهمن 1384
    محل زندگی
    تهرلن
    سن
    35
    پست
    296

    نقل قول: گير شر كردن به اين ميگن(كمك كمك در مورد sql server)

    از كدي كه فرستادي ممنونم
    ------------------------------
    نمي دونم مشكل دومي اصلا در اسكيوال وجود داره يا نه
    اگه كسي واقعا اينو ميدونه كمك كنه
    توش موندم بد جوري

  7. #7
    کاربر دائمی آواتار علیرضا حسن زاده
    تاریخ عضویت
    تیر 1388
    محل زندگی
    تــــــــــــــــــــــــــبریز
    پست
    897

    نقل قول: گير شر كردن به اين ميگن(كمك كمك در مورد sql server)

    نقل قول نوشته شده توسط ali682344 مشاهده تاپیک
    از كدي كه فرستادي ممنونم
    ------------------------------
    نمي دونم مشكل دومي اصلا در اسكيوال وجود داره يا نه
    اگه كسي واقعا اينو ميدونه كمك كنه
    توش موندم بد جوري
    می تونی رکورد رو Lock کنی که دو راه داره اولی که بهتره از طریق خود SQL هست و رکورد رو Lock میکنه و برای این کار می تونی از طریق ADO هم عمل کنی راه دوم هم اینکه که واسه هر رکورد یه فیلد Status بذاری که وقتی کاربری اون رو خوند مشخص کنه کاربرای دیگه می تونن اونو بخونن با ویرایش کنن و... اینم یادت باشه که اگه یه موقع کاربر در هر دو حالت رکورد رو قفل کرد و یه موقع سرور یا سیستم کابر هنگ کرد و ریستارت شده رکورد به صورت قفل باقی می مونه و باید یه قسمتی هم برای از قفل خارج کردنش بنویسی

  8. #8
    کاربر دائمی آواتار ali682344
    تاریخ عضویت
    بهمن 1384
    محل زندگی
    تهرلن
    سن
    35
    پست
    296

    نقل قول: گير شر كردن به اين ميگن(كمك كمك در مورد sql server)

    علي رضا جان من در اين مورد كه فرمودي خيلي مبتدي هستم
    حداقل يه نمونه ميشه بفرستي

    دستت درد نكنه اون راهي كه از همشون ساده تره

  9. #9
    کاربر دائمی آواتار علیرضا حسن زاده
    تاریخ عضویت
    تیر 1388
    محل زندگی
    تــــــــــــــــــــــــــبریز
    پست
    897

    Smile نقل قول: گير شر كردن به اين ميگن(كمك كمك در مورد sql server)

    نقل قول نوشته شده توسط ali682344 مشاهده تاپیک
    علي رضا جان من در اين مورد كه فرمودي خيلي مبتدي هستم
    حداقل يه نمونه ميشه بفرستي

    دستت درد نكنه اون راهي كه از همشون ساده تره
    در اولین فرصت چشم ولی شاید خیلی دیر کنم چون درگیر طراحی یه سایت هستم سرم خیلی شلوغه از دید و بازدید عید هم موندم ولی اگه فرصت کنم چشم
    اگر هم من نتونستم یه مطالعه ای در باره کرسر ها SQL انجام بده اون وقت یه چیزایی دستت میاد مثلا اگه با یه کرسر خاص یه پایگاه داده رو مرور کنی رکوردهایی که پرسجوی تو برمی گردونه واسه دیگران غیر قابل نمایش میشه

  10. #10
    کاربر دائمی آواتار ali682344
    تاریخ عضویت
    بهمن 1384
    محل زندگی
    تهرلن
    سن
    35
    پست
    296

    نقل قول: گير شر كردن به اين ميگن(كمك كمك در مورد sql server)

    فدات بشم مشكلي نيست فقط اين مشكل من حل بشه

    بازم ممنون

  11. #11
    کاربر دائمی آواتار ali682344
    تاریخ عضویت
    بهمن 1384
    محل زندگی
    تهرلن
    سن
    35
    پست
    296

    نقل قول: گير شر كردن به اين ميگن(كمك كمك در مورد sql server)

    هنوز منتظرم

  12. #12
    کاربر دائمی آواتار ali682344
    تاریخ عضویت
    بهمن 1384
    محل زندگی
    تهرلن
    سن
    35
    پست
    296

    نقل قول: گير شر كردن به اين ميگن(كمك كمك در مورد sql server)

    واقعا كسي نيست كه اطلاعات كافي در اين مورد داشته باشه

  13. #13
    کاربر تازه وارد آواتار paladin
    تاریخ عضویت
    اردیبهشت 1386
    پست
    80

    نقل قول: گير شر كردن به اين ميگن(كمك كمك در مورد sql server)

    شما می توانید از خود mssql استفاده کنی . توی ان از import استفاده کنی . فقط باید کلید ها و autonumber ها رو دوباره تعریف کنی . اگه مشکل داشتی بگو که بهت بگم. من روزی دوبار تبدیل میکنم .

  14. #14
    کاربر دائمی آواتار علیرضا حسن زاده
    تاریخ عضویت
    تیر 1388
    محل زندگی
    تــــــــــــــــــــــــــبریز
    پست
    897

    نقل قول: گير شر كردن به اين ميگن(كمك كمك در مورد sql server)

    دوست عزیز شرمنده یادم رفته بود
    ولی برای حالا این کاری رو که می گم بکن حل میشه؟
    برای جدول هایی که کاربرا می تونن به صورت مشترک استفاده کنن یه فیلد با مقدار بولین اضافه کنید(یا 0و1و2 که بتونه حالت های مختلف رو پشتیبانی کنی حالا اینو توضیح میدم).
    وقتی هر کاربری یه رکورد خاص رو خواست Fetch کنه اول چک کنه که فیلد وضعیت False هست یا نه اگر true بود پیام بده که کاربر دیگه درحال استفاده از این رکورد می باشد از طرف دیگه هر وقت کاربری روکورد رو تونست بخونه فیلد وضعیت اون رو true کنه تا کاربرای دیگه نتونن از اون استفاده کنن
    خوب کل تئوری بود
    حالا می تونی امکانات بیشتری رو هم اضافه کنی مثلا می تونی فیلد رو از نوع عدد صحیح انتخاب کنی و هر کاربر با قرار دادن مقدار های 0و1و2و... مشخص کنه که دیگران می تونن اون رو بخونن، اجازه خوندن به دیگران نده، اجازه نمایش به دیگران رو بده ولی امکان ویرایش و Update اون رو به دیگران نده یعنی برنامه چک کنه اگه فیلد مقدار مثلا 2 بود اجازه آپدیت رکورد رو به کابر نده.
    خوب این تا اینجا که کل عملیات رو باید خودت پیاده سازی کنی البته اگه خواستی روش دوم رو پیاده کنی باید خیلی چیزار و حواست باشه
    باز اگه فرصتی شد روش استفاده از کرسر ها رو هم توضیح میدم که شاید راحتتر باشه

  15. #15
    کاربر دائمی آواتار ali682344
    تاریخ عضویت
    بهمن 1384
    محل زندگی
    تهرلن
    سن
    35
    پست
    296

    نقل قول: گير شر كردن به اين ميگن(كمك كمك در مورد sql server)

    از راهنمايي شما واقعا ممنونم


    در اين روش اگه سيستم هنگ كنه چه بلايي سر ركورد مياد
    مثلا اگه يه كابر رفته بود روي يك ركورد كه اونو ويرايش كنه بعد سيستم هنگ كنه
    مقداري كه در ركورد ذخيره شده همون مقدار قبليه پس همون ركورد ديگه غير قابل ويرايشه

    يعني دفعه بعد خودش هم دچار مشكل ميشه ، قادر به ويرايش اون ركورد نيست
    اينو بايد چه كار كرد

  16. #16
    کاربر دائمی آواتار علیرضا حسن زاده
    تاریخ عضویت
    تیر 1388
    محل زندگی
    تــــــــــــــــــــــــــبریز
    پست
    897

    نقل قول: گير شر كردن به اين ميگن(كمك كمك در مورد sql server)

    خوب دوست عزیز همینو گفتم باید مواظب باشی برنامه هایی که از این روش استفاده می کنن قسمتی هم دارن که Admin برنامه میتونه رکورد ها رو از حالت قفل دربیاره یا میتونه این اختیار رو به کاربرای خاصی بده به این صورت که بدون توجه به وضعیت قفل رکورد اون رو به حالت دلخواه خودش می بره (می تونه یه سری رکورد ها رو غیر قابل نمایش یا ویرایش برای کابرای دیگه بکنه) این روش انعطاف پذیریش خیلی زیاده و هر چیزی که تو ذهنت باشه می تونی پیاده سازی کنی ولی در استفاده از کرسرها محدودیت های خاصی داری که البته این مشکلات رو نداری

  17. #17
    کاربر دائمی آواتار ali682344
    تاریخ عضویت
    بهمن 1384
    محل زندگی
    تهرلن
    سن
    35
    پست
    296

    نقل قول: گير شر كردن به اين ميگن(كمك كمك در مورد sql server)

    دوست عزيز با اين پيشنهاد هاي شما مخ من هم جرقه اي زد گفتم بهتره اونو مطرح كنم .

    من اومدم دو تا فيلد درست كردم يكي براي كاربران(karbar) و دومي همون مقدار بولين (edit)

    وقتي يك كاربر لوگين مي كنه اين مقدار فيلد يعني (karbar) پر مي شه يعني نام كابر داخل فيلد كابر ميره ،يعني ما براي هر ركورد مشخص مي كنيم چه كسي با اون كار كرده
    وقتي كاربر روي يك ركورد ميره اگه فيلد edit مقدار false داشت به كابران ديگه اجازه ويرايشو نميده

    خوب هدف من براي ايجاد فيلد كاربر اينه كه :

    اگه سيستم هنگ كرده باشه و يك ركورد قفل شده بود ،با يه دستور در ابتداي فرم لوگين مي تونيم ركوردي و كه توسط اون كابر قفل شده باز كنيم

    خوب اگه مشكلي به نظرتون مي رسه كه من متوجه نشدم لطفا توضيح بدين
    آخرین ویرایش به وسیله ali682344 : یک شنبه 08 فروردین 1389 در 13:47 عصر

  18. #18
    کاربر دائمی آواتار علیرضا حسن زاده
    تاریخ عضویت
    تیر 1388
    محل زندگی
    تــــــــــــــــــــــــــبریز
    پست
    897

    نقل قول: گير شر كردن به اين ميگن(كمك كمك در مورد sql server)

    نقل قول نوشته شده توسط ali682344 مشاهده تاپیک
    خوب اگه مشكلي به نظرتون مي رسه كه من متوجه نشدم لطفا توضيح بدين
    اینکه کاربر ایجاد کننده یا ویرایش کننده هر رکورد رو ثبت کنی تو خیلی از سیستم ها وجود داره و برای برنامه هایی مثل برنامه های حسابداری بزرگ که چند تا کاربر ازش استفاده می کنن مفیده
    ولی این که کاربر بتونه در زمان لوگین رکورد قفل شده رو باز کنه خوب نیست و این وظایف آدمین برنامه هست و اون باید چک کنه که چرا رکورد قفل شده یا سیستم هنگ کرده بود(مثلا کاربر قصد خرابکاری داشته یا نه)
    ولی خوب همون طور که گفتم تئوری واصول کار همینه حالا شما می تونه بسته به نوع نیازتون می تونید اون رو پیاده سازی کنید
    اینم در نظر داشته باشید که اگه یه موقع برناتون خواست رو یه شبکه بزرگ کار کنه ممکنه ترافیک شبکه بوجود بیاره که باید بهینه سازی های مناسب رو انجام بدی تا به کمترین ارتباط با سرور نیاز باشه

  19. #19
    کاربر تازه وارد آواتار paladin
    تاریخ عضویت
    اردیبهشت 1386
    پست
    80

    نقل قول: گير شر كردن به اين ميگن(كمك كمك در مورد sql server)

    پسر خوب از اکسس فقط در یک صورت دو صورت میتونی تحت شبکه (منظورم چند کاربره ) استفاده کنی اول استفاده از لایه بنده با کامپوننت های RCC هست . دوم استفاده از Remote desktop . کلا اکسس رو بیخیال شو .
    البته RD بدک نیست .

  20. #20
    کاربر دائمی آواتار ali682344
    تاریخ عضویت
    بهمن 1384
    محل زندگی
    تهرلن
    سن
    35
    پست
    296

    نقل قول: گير شر كردن به اين ميگن(كمك كمك در مورد sql server)

    دوست عزيز مشكل من در sql server 2000 هست


    اگه شما در اين مورد اطلاعي داري واقعا دريغ نكنيد چون كارم گيره البته دوستاي ديگه راهنمايي هاي خوبي كردن ولي يه استفاده صحيح رو مي خوام ياد بگيرم.

  21. #21
    کاربر دائمی آواتار ali682344
    تاریخ عضویت
    بهمن 1384
    محل زندگی
    تهرلن
    سن
    35
    پست
    296

    نقل قول: گير شر كردن به اين ميگن(كمك كمك در مورد sql server)

    گمون كنم كسي نيست يه كمك درستو حسابي به ما بكنه

  22. #22
    کاربر تازه وارد آواتار paladin
    تاریخ عضویت
    اردیبهشت 1386
    پست
    80

    نقل قول: گير شر كردن به اين ميگن(كمك كمك در مورد sql server)

    خوب الان مشکل شما دقیقا کجاست؟

  23. #23
    کاربر دائمی آواتار ali682344
    تاریخ عضویت
    بهمن 1384
    محل زندگی
    تهرلن
    سن
    35
    پست
    296

    نقل قول: گير شر كردن به اين ميگن(كمك كمك در مورد sql server)

    با تشکر از پاسختون
    یکی از مشکلات رفع شد
    مشکل دوم
    مثلا در ان واحد يكي مي تونه يه ركورد و حذف كنه و يه نفر ديگه رو همون ركورد داره عمل ويرايش انجام ميده
    با استفاده از یک روش حرفه ای ، نه با استفاده از ساختن یک فیلد boolean برای اینکه ببینیم این رکورد در حال ویرایش است یا نیست
    (به دلیل مشکلاتی که بعدا پیش می اید ، در پست های قبلی به آن اشاره شده است)

  24. #24
    کاربر تازه وارد آواتار paladin
    تاریخ عضویت
    اردیبهشت 1386
    پست
    80

    نقل قول: گير شر كردن به اين ميگن(كمك كمك در مورد sql server)

    شما چند راه دارید : 1 استفاده از برنامه نویسی چند لایه 2 استفاده از قفل کردن رکورد در زمان انجام اعمال خاص( مثل ویرایش ) و ... این دو راه از همه راحتره . از فکر فیلد boolean بیا بیرون، شدید ! چون باید قید گسترش برنامه رو بزنی . در هر مورد که گفته شد یه سرچ بزنی می تونی هزار تا مطلب پیدا کنی .

  25. #25
    کاربر دائمی آواتار ali682344
    تاریخ عضویت
    بهمن 1384
    محل زندگی
    تهرلن
    سن
    35
    پست
    296

    نقل قول: گير شر كردن به اين ميگن(كمك كمك در مورد sql server)

    با تشكر مجدد از شما
    اگر يه نمونه كدي در مورد قفل كردن ركورد داريد من ديگه ازشر اين هم خلاص ميشم

    بازهم از پاسختون ممنونم

  26. #26
    کاربر تازه وارد آواتار paladin
    تاریخ عضویت
    اردیبهشت 1386
    پست
    80

    نقل قول: گير شر كردن به اين ميگن(كمك كمك در مورد sql server)

    من چند وقته که VB کار نکردم ولی این رو پیدا کردم :
         Dim conn As New ADODB.Connection
    Dim rsapprove As New ADODB.Recordset
    Set conn = New ADODB.Connection

    Set rsapprove = New ADODB.Recordset
    conn.Open sqlConnStr
    rsapprove.Open "Finalvouch", conn, adOpenKeyset, adLockOptimistic, adCmdTable

    Dim Str_query1 As String
    Dim Status As String

    If optApprove.Value = True Then
    Status = "Approved"

    ' On Error GoTo myerror

    With rsapprove
    .AddNew

    .Fields("vouchno") = txtVoucherNo
    .Fields("PAYEE") = txtPayee
    .Fields("BANK") = cboBank
    .Fields("checkno") = txtCheckNo
    .Fields("TDATE") = txtDate
    .Fields("TOTAMT") = txtTotAmount
    .Fields("prepby") = txtPREPBY
    .Fields("notedby") = txtNOTEDBY
    .Fields("apprby") = txtAPPRVBY
    '.Fields("DateRecvd") = Me.txtDateRecvd
    .Fields("recvdby") = txtRECVDBY
    .Fields("PARTICULARS") = Me.txtParticulars.Text
    .Fields("MADEIN") = cboIssuedAt
    .Fields("Status") = Status

    if rsapprove.fields("status") = "Approved" then
    lock rsappove
    end if

    'Do While Not rsapprove.EOF
    'If txtVoucherNo.Text <> rsapprove.Fields("vouchno") Then

    .Update
    'Else
    ' MsgBox "This check has already undergone Approval", vbInformation, "Check Voucher"
    ' Unload Me
    ' Exit Sub
    'End If
    'Loop

    End With

    MsgBox "Check Approved and Entries Updated", vbInformation, "Vouchers"
    cmdSave.Enabled = False

  27. #27
    کاربر دائمی آواتار ali682344
    تاریخ عضویت
    بهمن 1384
    محل زندگی
    تهرلن
    سن
    35
    پست
    296

    نقل قول: گير شر كردن به اين ميگن(كمك كمك در مورد sql server)

    دوست عزیز از لطف شما متشکرم
    ولی این کد هم یه فیلد گزاشته برای قفل کردن رکورد با استفاده از چک باس
    به طور کلی با این دستورات مشکلات عرض شده پابرجاست

قوانین ایجاد تاپیک در تالار

  • شما نمی توانید تاپیک جدید ایجاد کنید
  • شما نمی توانید به تاپیک ها پاسخ دهید
  • شما نمی توانید ضمیمه ارسال کنید
  • شما نمی توانید پاسخ هایتان را ویرایش کنید
  •