2017-01-31 3 views
0

В настоящее время я обновляю таблицу базы данных в oracle.Обновление данных таблицы в Oracle

Я попытался обновить строки с данными 6 с 42 для пользователей определенной категории.

Но вместо этого я оставил пользователя, и я обновил целую таблицу с 42 для всех пользователей с 6 в столбце «тот».

Я использую разработчик pl/sql. Я нажал yes, чтобы отправить в базу данных.

Я знаю, что обновления - это команда autocommit.

Я не знаю точно, сколько строк было затронуто, но я знаю, что в этой колонке больше нет пользователей с 6, а у всех пользователей с 6 в этой колонке теперь 42.

Вопрос

Есть ли способ, что я могу отменить эту ошибку?

+0

Если вы совершили изменения (возможно, с autocommit), то вам придется использовать резервную копию. Если autocommit не применялся, попробуйте «rollback» (не уверен, какие rdms вы используете) именно в этом сеансе/окне, в котором вы выполнили инструкцию обновления. –

+0

Я попробовал откатnd данные не откат. Я не архивировал таблицы. Я использую oracle 11 с разработчиком pl/sql. Есть ли простой способ для восстановления? – javaTwilight

ответ

2

Если вам повезет, вы можете использовать что-то вроде FLASHBACK TABLE abc TO TIMESTAMP (SYSTIMESTAMP - INTERVAL '15' minute). К сожалению, для этого требуется, чтобы у вас было движение до утверждения обновления (что маловероятно, что у вас было).

Так что я полагаю, что - при отсутствии резервной копии - нет никакого способа, чтобы получить обратно информацию :-(

Но это только мое мнение, я бы предложил, чтобы - если это возможно - выйти из БД до тех пор, пока кто-нибудь не придумает лучшие идеи. Прежде чем делать что-либо сейчас, обратите внимание, что операции могут обрезать журналы (что может понадобиться для кого-то еще с лучшими идеями) - переосмыслить то, что вы делаете.

+0

Спасибо, за информацию. Я ничего не могу сделать до завтрашнего утра. Не могу поверить, что я был настолько глуп. Надеюсь, они меня не уволят. Я надеюсь, что смогу выяснить, или парень знает, как вернуть его с помощью скрипта, поскольку эти столбцы запускаются данными в определенных столбцах. – javaTwilight

+0

Да, мне сказали без резервного копирования, нет способа получить информацию , Спасибо за ваши ответы, Стефан Лехнер. Я пытаюсь понять, могу ли я создать схему производственной базы данных и ввести данные с тестового сервера в нее, а затем запустить производственные схемы друг против друга. или что-то в этом роде, как мне сказали. Я посмотрю. – javaTwilight

Смежные вопросы