PDA

View Full Version : آپدیت یک رکورد با استفاده از lock



mehran_sh_t
پنج شنبه 01 دی 1390, 09:53 صبح
سلام
در یک جدول می خواهیم یک رکورد را بر اساس شرطی خاص انتخاب و آپدیت کنیم.
در حین این عملیات کاربر دیگری نباید به رکورد مورد نظر دسترسی داشته باشد.

چطور با استفاده از lock یا دستور دیگر این دو علمیات را پیاده کنیم؟

baktash.n81@gmail.com
پنج شنبه 01 دی 1390, 10:16 صبح
سلام

با استفاده از Transaction کدت رو داخل یک بلوک Tranasaction قرار بده ...

mehran_sh_t
پنج شنبه 01 دی 1390, 10:42 صبح
با استفاده از Transaction کدت رو داخل یک بلوک Tranasaction قرار بده ...

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

اگر اینطوره، می خوایم همزمان هم بشه دسترسی داشت، ولی برای هر دسترسی، یک رکورد مستقل رو انتخاب و آپدیت کنه.

baktash.n81@gmail.com
شنبه 03 دی 1390, 11:48 صبح
خوب تا اونجایی که من می دونم ما می تونیم برای Transaction چهار سطح تعریف کنیم ... که به هشون می گیم Isolation level که رفتار Transaction رو روی قفل کردن Data هارو مدیریت می کنه ... این چهار تا

SET TRANSACTION ISOLATION LEVEL
{
READ COMMITTED
| READ UNCOMMITTED
| REPEATABLE READ
| SERIALIZABLE
}

Serialzable از همه سخت گیرانه تره ... ( اگه صفت مناسبی رو گفته باشم ) به این ترتیب کل DataSet ی که transaction داره روش کار می کنه رو قفل می کنه ...

یکم جستجو کنی حتما می تونی بفهمی کدومشون مشکلتو حل می کنه ...

programmernet
جمعه 16 اسفند 1392, 08:40 صبح
خوب تا اونجایی که من می دونم ما می تونیم برای Transaction چهار سطح تعریف کنیم ... که به هشون می گیم Isolation level که رفتار Transaction رو روی قفل کردن Data هارو مدیریت می کنه ... این چهار تا SET TRANSACTION ISOLATION LEVEL { READ COMMITTED | READ UNCOMMITTED | REPEATABLE READ | SERIALIZABLE }Serialzable از همه سخت گیرانه تره ... ( اگه صفت مناسبی رو گفته باشم ) به این ترتیب کل DataSet ی که transaction داره روش کار می کنه رو قفل می کنه ... یکم جستجو کنی حتما می تونی بفهمی کدومشون مشکلتو حل می کنه ...من این کد هایی که شما الان معرفی کردین را استفاده کردم اما به نتیجه نرسیدم