Встречается на 1% собеседований по Python
Зачем нужно выражение SELECT FOR UPDATE в SQL
SELECT FOR UPDATE используется для блокировки строк в таблице на время транзакции, предотвращая их изменение другими транзакциями. Это полезно для обеспечения согласованности данных при конкурентном доступе.
Пример:
sql
BEGIN;
SELECT * FROM accounts WHERE user_id = 1 FOR UPDATE; -- Блокировка строки
UPDATE accounts SET balance = balance - 100 WHERE user_id = 1;
COMMIT;Ключевые моменты:
- Блокировка снимается после
COMMITилиROLLBACK. - Если другая транзакция попытается изменить заблокированную строку, она будет ждать снятия блокировки (или завершится с ошибкой, если настроен таймаут).
- Используется в сценариях, где важно избежать состояния гонки (например, финансовые операции).
Альтернативы: SELECT ... LOCK IN SHARE MODE (для чтения без изменения).

Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
офферы быстрее!
Попробовать бесплатно
Следующий вопрос
Это единственный вопрос по вашему фильтру
Похожие вопросы
как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы