sql >> Databáze >  >> RDS >> Oracle

Jak obnovit data v tabulce Oracle?

Za prvé, provedli jste změnu? Pokud ne, můžete jednoduše provést rollback vrátit provedené změny.

Za předpokladu, že jste provedli své změny, upravují jiní uživatelé tabulku současně? Potřebujete zachovat změny, které provedli ostatní, a vrátit pouze změny, které jste provedli ve své transakci? Nebo můžete obnovit celou tabulku do bodu v čase před provedením změn?

Pokud můžete obnovit celou tabulku do určitého okamžiku

FLASHBACK TABLE <<table name>>
  TO TIMESTAMP( systimestamp - interval '10' minute )

vrátí tabulku do stavu, ve kterém byla před 10 minutami za předpokladu, že UNDO nezbytně nutné k tomu zůstává k dispozici (takže po provedení chyby máte pouze omezený čas na to, abyste si tuto chybu mohli vrátit zpět). Za účelem vystavení FLASHBACK TABLE , musíte se také ujistit, že

  • Tabulka povolila pohyb řádků ALTER TABLE <<table name>> ENABLE ROW MOVEMENT
  • Musíte mít FLASHBACK oprávnění k tabulce nebo FLASHBACK ANY TABLE systémové oprávnění.


  1. Zaslání protokolu SQL Serveru a obnovení po havárii Instalace a konfigurace -3

  2. Jak uložit datovou tabulku do databáze?

  3. Oracle -- Importovat data do tabulky s jiným názvem?

  4. CHYBA PostgreSQL:funkce to_tsvector(znak různý, neznámý) neexistuje