2014-09-20 3 views
1

Я искал команду flashback. Где-то написано, что мы можем отменить операцию усечения, и где-то написано, что мы не можем откатить. Может ли команда FLASHBACK в Oracle использовать для отката операции усечения таблицы?Использование FLASHBACK в Oracle

+0

Flashback - это не то же самое, что откат, но нет, он не может восстановиться из усечения, и вы не можете выполнить запрос ретроспективного запроса после усечения. Он может восстановиться из «таблицы падения», которая может быть путаницей. Возможно, вы могли бы цитировать и/или ссылаться на источники для двух противоречивых заявлений? –

ответ

3

Необходимо иметь Flashback Data Archive включен. Тогда усеченный может быть отменено с заявлением, как это:

insert into <truncated_table> 
    select * from <truncated_table> as of timestamp <some time>; 

Благодаря @Jon Heller для добавления этой полезной информации о новой функции:

Это требует версии 11.2 или выше, который представил поддержку DDL statements such as truncate.

+1

Вы все еще [не можете восстановить из усечения] (http://docs.oracle.com/cd/B28359_01/appdev.111/b28424/adfns_flashback.htm#BJFJHDAG), хотя? Вернее, не может усечь, если это включено; но в любом случае вы не можете «откатить» усечение? –

+0

Мое намерение состояло в том, чтобы сосредоточиться на обратном пути. Я не говорю, что он откатывает усеченные данные. Но *** это позволит архивировать исторические данные для доступа со стандартными операторами SQL *** –

+0

@ Джон, спасибо за редактирование. Теперь имеет смысл. –

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

  • Нет связанных вопросов^_^