Параметры NOWAIT и SKIP LOCKED в Oracle следует использовать в следующих случаях:
- NOWAIT. docs.oracle.com При использовании этого параметра запрос не ждёт получения блокировки строки. docs.oracle.com Если запросерованная строка заблокирована, выполнение запроса завершается ошибкой. docs.oracle.com
- SKIP LOCKED. docs.oracle.com markjbobak.wordpress.com При использовании этого параметра запрос не ждёт получения блокировки строки, а выполняется немедленно, удаляя заблокированные строки из набора результатов. docs.oracle.com Это может быть полезно, например, когда к одной и той же таблице, похожей на очередь, обращаются несколько сессий. docs.oracle.com
Следует учитывать, что запросы, пропускающие заблокированные строки, возвращают несогласованное представление данных, поэтому SKIP LOCKED не подходит для общей транзакционной работы. docs.oracle.com
Выбор между этими параметрами зависит от конкретной ситуации и требований к производительности.