2011-07-04 4 views
7

Dün benim arkadaşım -BI Uzmanı - bana bir oracle sorunu açıkladı:
büyük miktarda veri içeren bir Oracle veritabanı var ama her satır için oluşturulan datetime saklanan her tablo için sütun yapmıyorlar.
Bu durumda Her satır için oluşturulan datetime (zaman damgası) nasıl oluşturulur?Oracle'da Table satırı için oluşturulan tarih nedir?

+1

veri mevcut muazzam miktarlarda mevcut bir veritabanında demek:

İlk SCN öğrenmek ve ona dayanan ve zaman damgası almak için SCN_TO_TIMESTAMP kullanabilir? herhangi bir Denetim etkin midir? – Randy

+0

Bunu düşünmüyorum –

cevap

17

Her satırın kendi Sistem Değiştirme Numarası (SCN) vardır. Bu, veritabanındaki bir anı tam olarak tanımlamaktır.

SELECT 
    SCN_TO_TIMESTAMP(ora_rowscn) 
FROM 
    MyTable 
+3

Ayrıca, SCN_TO_TIMESTAMP() 'in daha eski veriler için geçerli olmayabileceğini de unutmayın (ancak, ORA_ROWSCN her zaman kullanılabilir durumdadır). –

+0

@Alvaro: Evet, gerçekten. – CristiC

+3

Ayrıca, ora_rowscn varsayılan olarak blok seviyesinde (NOROWDEPENDENCIES varsayılan CREATE TABLE seçeneğidir) kaydedilir. Ayrıca bkz. Http://asktom.oracle.com/pls/apex/f?p=100:11:0::NO::P11_QUESTION_ID:517105100346104196 –