sql >> Databasteknik >  >> RDS >> Oracle

Hur använder man Timestamp_to_scn och Scn_to_timestamp i Oracle?

Du försöker se för långt tillbaka. Du kan bara konvertera till och från SCN:er som finns i redo-/flashback-fönstret som underhålls av ditt system. När du byter ålder går kartläggningen förlorad.

Detta förklaras i dokumentationen:

Sambandet mellan ett SCN och en tidsstämpel när SCN genereras kommer ihåg av databasen under en begränsad tidsperiod. Denna period är den maximala lagringsperioden för den automatiskt inställda ångralagringsperioden, om databasen körs i läget Automatic Undo Management, och lagringstiderna för alla flashback-arkiv i databasen, men inte mindre än 120 timmar. Tiden för att föreningen ska bli inaktuell går först när databasen är öppen. Ett fel returneras om SCN specificerat för argumentet till SCN_TO_TIMESTAMP är för gammal.

Tänk på att dessa är en del av Oracles interna mekanism och är därför till begränsad nytta för oss; även om de är användbara för flashback-frågor förstås - igen inom samma fönster.



  1. Spara SQLite-frågeresultat till en textfil

  2. C# ringer oracle lagrad funktion

  3. Oracle Infoga via Välj från flera tabeller där en tabell kanske inte har en rad

  4. PostgreSQL, konfigurera om befintlig tabell, ändra primärnyckeln till typ=seriell