Що таке блокування (lock) у SQL?
Блокування (lock) у SQL - це механізм, який обмежує доступ інших транзакцій до даних, щоб зберегти цілісність і уникнути конфліктів під час одночасних операцій.
Коли одна транзакція читає чи змінює рядок, таблицю чи сторінку пам'яті, база може заблокувати цей об'єкт, не дозволяючи іншим транзакціям змінити його до завершення поточної.
Основні типи блокувань
- Shared lock (розділюване) - дозволяє іншим транзакціям читати дані, але не змінювати їх.
- Exclusive lock (виключне) - повністю блокує доступ: ніхто не може ні читати, ні змінювати, доки блокування не знято.
Приклад: якщо одна транзакція оновлює баланс користувача, друга не зможе змінити ті самі дані, доки перша не завершиться (COMMIT або ROLLBACK).
Це запобігає гонкам даних (race conditions) і пошкодженню інформації.
Коротка відповідь
Для співбесідиPremium
Коротка відповідь допоможе вам впевнено відповідати на цю тему під час співбесіди.