Інтерпретація
По не-оновлення (читання) створює блокування. Інші користувачі можуть одночасно зчитувати дані, але будь-яка угода може отримати монопольну блокування на даних, поки всі колективні блокування не були звільнені.
Колективні блокування (S замок), також відомий як блокування читання, якщо об'єкт даних транзакцій T Plus S-блокування, транзакція T може тільки читати, не можуть бути змінені, інші послуги можуть бути додані на S-блокування, але не можуть додавати X не встануть до виходу блокування S на T. Це гарантує, що інші транзакції можуть читати, але при Т S замок на випуск до не може вносити ніяких змін.Ексклюзивні замки і загальною різницею замки
1 колективні блокування (S замок): Якщо транзакція T на даних плюс колективна блокування, ніяка інша транзакція не може бути тільки в поєднанні з розділяється блокуванням не можете додати ексклюзивну блокування. Колективні блокування справ дозволяється тільки зчитувати дані, ви не можете змінити дані.
Ексклюзивні замку (X замок): Якщо транзакція T на даних плюс ексклюзивна блокування, ніяка інша транзакція не може більше тримати будь-якого типу плюс блокади. Ексклюзивні угоди замок дозволив і зчитувати дані, але і модифікувати дані.
Ви можете мати загальні 2.Windows замок
3 Інші користувачі можуть одночасно читати, запиту даних. Але не змінювати, додавати, видаляти дані. Спільного використання ресурсів. [1]
Використання загальних блокувань
При першому підключенні, виконайте наступну інструкцію
почати перехід
SELECT * FROM table1 HOLDLOCK-HOLDLOCK штучно заблокована
де B = "b2"
WAITFOR затримки '00: 00:30 '- почекайте 30 секунд
здійснити перехід
У другому зв'язку наступну заяву
почати перехід
виберіть, C FROM Table1
де B = "b2"
Оновлення table1
Покладемо А = "АА"
де B = "b2"
здійснити перехід
Якщо обидва виконання зазначених вище двох тверджень, друге з'єднання може бути виконано в запиті на вибірку
Оновлення необхідно дочекатися першої угоди, щоб звільнити замок у загальну ексклюзивну блокування, перш ніж зробити це, щоб чекати протягом 30 секунд [2]
|