Я искал команду flashback. Где-то написано, что мы можем отменить операцию усечения, и где-то написано, что мы не можем откатить. Может ли команда FLASHBACK в Oracle использовать для отката операции усечения таблицы?Использование FLASHBACK в Oracle
ответ
Необходимо иметь 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.
Вы все еще [не можете восстановить из усечения] (http://docs.oracle.com/cd/B28359_01/appdev.111/b28424/adfns_flashback.htm#BJFJHDAG), хотя? Вернее, не может усечь, если это включено; но в любом случае вы не можете «откатить» усечение? –
Мое намерение состояло в том, чтобы сосредоточиться на обратном пути. Я не говорю, что он откатывает усеченные данные. Но *** это позволит архивировать исторические данные для доступа со стандартными операторами SQL *** –
@ Джон, спасибо за редактирование. Теперь имеет смысл. –
Flashback - это не то же самое, что откат, но нет, он не может восстановиться из усечения, и вы не можете выполнить запрос ретроспективного запроса после усечения. Он может восстановиться из «таблицы падения», которая может быть путаницей. Возможно, вы могли бы цитировать и/или ссылаться на источники для двух противоречивых заявлений? –