PDA

View Full Version : جلوگیری از درج داده تکراری در شرایط کلیک همزمان دکمه ثبت



bftarane
یک شنبه 22 تیر 1393, 15:06 عصر
سلام.
یه مسئله ای هست که امروز فکرم رو درگیر کرده و اون اینکه
من همیشه در برنامه ها برای اینکه نام کاربری تکراری درج نشه از select count استفاده می کنم که اگه نتیجه غیرصفر برگردونه یعنی داده در حال حاضر این داده در جدول موجود هست،
حالا اگه دو نفر دقیقاً همزمان دکمه رو کلیک کنن (میدونم احتمالش زیاد نیست ولی میخوام جواب رو بدونم) خوب از نظر من برای هر دو تشخیص می ده که این نام کاربری در جدول موجود نیست و هر دو رو درج می کنه. آیا نظرم اشتباه هست؟

حالا من در یک برنامه نیاز به ثبت تاریخ غیرتکراری دارم و تصمیم داشتم در کلیک دکمه تاریخ الآن رو در یک متغیر استاتیک ذخیره کنم و نفر بعدی که کلیک می کنه چک می شه که آیا تاریخ الآن با تاریخ اون متغیر استاتیک یکی هست یا نه اگه یکی بود که پیغام بدم دوباره کلیک کنید ولی حالا ذهنم درگیر شده که اگه دکمه رو دو نفر در دقیقاً یک زمان کلیک کنن، خوب نتیجه مقایسه تکراری بودن برای هر دو false خواهد بود و الآن در واقع دو تا تاریخ یکسان برای این دو نفر درج میشه، البته شاید دارم اشتباه می کنم. ممنون میشم راهنمایی کنید.

aminaltavista
یک شنبه 22 تیر 1393, 21:53 عصر
شما نیاز به مطالعه مباحث پیشرفته دیتابیس دارید.مبحثی وجود داره که تداعی همین درخواست شماست.
پیشنهاد منhttp://www.nikamooz.com
این رو هم نگاه کن : Blocking (http://www.nikamooz.com/%D9%85%D9%82%D8%A7%D9%84%D8%A7%D8%AA-%D8%B1%D8%A7%DB%8C%DA%AF%D8%A7%D9%86/sql-server-vs-net/sql-server-administration/228-blocking-%D9%88-%D9%85%D8%B3%D8%A7%D8%A6%D9%84-%D9%85%D8%B1%D8%A8%D9%88%D8%B7-%D8%A8%D9%87-%D8%A2%D9%86-%D8%AF%D8%B1-sql-server.html)
ضمنا پیشنهاد من باعث سوء تفاهم نشه (هیچ جنبه تبلیغاتی نداره)

bftarane
دوشنبه 23 تیر 1393, 09:05 صبح
من با دیتابیس Access کار می کنم. راهی نداره در Code behind از این مسئله جلوگیری بشه؟