Нет, вы не можете указать NOWAIT в операторе обновления - NOWAIT должен быть указан в операторе SELECT FOR UPDATE.
Да, вы можете молча отменить выбор для обновления - если вы укажете NOWAIT и обработаете исключениесгенерировано:
BEGIN
SELECT x FROM table FOR UPDATE NOWAIT;
EXCEPTION
WHEN OTHERS THEN
<handle exception>
END;
Да, можно указать время ожидания.Вместо NOWAIT в приведенном выше примере укажите WAIT n , где n - количество секунд ожидания блокировки.Если вы не можете получить блокировку в это время, она снова выйдет из строя с ORA-00054, с которым вы можете справиться, как и раньше.