Облажался стол в оракуле - PullRequest
2 голосов
/ 13 февраля 2010

Я должен признать, что я просто прикрутил собаку в производственной базе данных. При выполнении запроса на обновление в SQL Developer я не осознавал, что выделена только часть запроса. Если у вас есть опыт работы с SQL Developer, это означает, что SQL Developer будет выполнять только этот подраздел запроса - в этом случае, очевидно, было выделено «UPDATE

Ответы [ 3 ]

9 голосов
/ 13 февраля 2010

В Oracle у вас есть волшебный запрос флешбека , если ваша база данных 9i или выше и ваша отмена не слишком старая. Что-то вроде:

SELECT ...
FROM <table> 
AS OF TIMESTAMP TO_TIMESTAMP('12-FEB-2010 10.55.00.000000');

Если запрос возвращает ORA-01555 Snapshot Too Old, это означает, что значение undo_retention вашей конфигурации базы данных недостаточно для восстановления ...

1 голос
/ 13 февраля 2010

Был ли создан отменить сегмент для базы данных? Если это так, вы можете откатить то, что вы только что сделали - если в нем было достаточно места.

0 голосов
/ 13 февраля 2010

Если у вас не включена неявная фиксация транзакции, и у вас все еще открыто то же соединение, вы можете откатить вашу последнюю транзакцию. Если нет, восстановление из резервной копии - единственный другой вариант, о котором я могу подумать.

...