ORA-00054: ресурс занят и получен с указанным значением NOWAIT или истекло время ожидания - PullRequest
160 голосов
/ 30 января 2011

Почему я получаю эту ошибку базы данных при обновлении таблицы?

ОШИБКА в строке 1: ORA-00054: ресурс занят и получен с указанным значением NOWAIT или истекло время ожидания

Ответы [ 13 ]

2 голосов
/ 19 ноября 2015

Мне удалось поразить эту ошибку при простом создании таблицы!Очевидно, на столе, который еще не существовал, не было проблем с конкуренцией.Оператор CREATE TABLE содержал предложение CONSTRAINT fk_name FOREIGN KEY, ссылающееся на хорошо заполненную таблицу.Мне пришлось:

  • Удалить предложение FOREIGN KEY из оператора CREATE TABLE
  • Создать INDEX для столбца FK
  • Создать FK
0 голосов
/ 17 января 2017

Я также сталкиваюсь с подобной проблемой. Программисту ничего не нужно делать, чтобы устранить эту ошибку. Я сообщил своей команде оракула DBA. Они убивают сеанс и работают как заклинание.

0 голосов
/ 27 марта 2013

Решение, данное ссылкой Шаши, является лучшим ... не нужно связываться с dba или кем-то еще

сделать резервную копию

create table xxxx_backup as select * from xxxx;

удалить все строки

delete from xxxx;
commit;

вставьте свою резервную копию.

insert into xxxx (select * from xxxx_backup);
commit;
...