joomla templates Data Warehouse Türkiye

Thu09012011

Last update07:32:32 PM GMT

Back Kategoriler Oracle Dba Oracle Flashback ile Eski Datalara Erişmek(as of timestamp)
Salı, 15 Şubat 2011 21:21

Oracle Flashback ile Eski Datalara Erişmek(as of timestamp)

Yazan&Gönderen  Ercan Yazgan
Bu Öğeyi Derecelendir
(0 Oylar)

Merhaba arkadaşlar,

Bu yazımda Oracle’ın flashback özelliğini kullanarak değiştirdiğimiz veya sildiğimiz verilere nasıl erişeceğimizi anlatacağım.

Önce örneğimiz için aşağıdaki gibi bir tablo oluşturalım :

create table as_of_timestamp(

as_of1 varchar2(20),

as_of2 varchar2(20)

)

Table created.

Sonra tablomuza aşağıdaki gibi 3 adet kayıt ekleyelim :

insert into as_of_timestamp values ('1.kayit','var');

insert into as_of_timestamp values ('2.kayit','var');

insert into as_of_timestamp values ('3.kayit','var');

commit;

1 row created.

1 row created.

1 row created.

Commit complete.

Şu an itibarıyle tablomuz aşağıdaki gibi :

select * from as_of_timestamp;

AS_OF1

AS_OF2

1.kayit

var

2.kayit

var

3.kayit

var

Şimdi tablomuzdan 2. Kaydı uçuruyoruz.

delete from as_of_timestamp where as_of1 like '2%';

commit;

1 row deleted.

Commit complete.

Tablomuzun yeni hali şöyle :

select * from as_of_timestamp

AS_OF1

AS_OF2

1.kayit

var

3.kayit

var

Mesela şöyle bir senaryo üretelim ki sildiğimiz bu data bize sonradan lazım oldu. Veyahut silmememiz gereken bir datayı sildik. Hal böyleki commitlemiş de bulunduk J Bu tür durumlarda no panic : )

Aşağıdaki gibi bir sorguyla “TO_TIMESTAMP” fonksiyonu içerisinde belirttiğimiz tarihteki dataya ulaşabiliyoruz. Ben slime işlemini 17:34 te yapmıştım. Aşağıdaki gibi, tablonun 17:32 anındaki datasına erişebiliyorum :

select * from as_of_timestamp

as of timestamp TO_TIMESTAMP('2011-02-14 17:32:00', 'YYYY-MM-DD hh24:mi:SS')

AS_OF1

AS_OF2

1.kayit

var

2.kayit

var

3.kayit

var

Umarım faydası dokunur.

İyi Çalışmalar.

Son Düzenleme Cumartesi, 19 Şubat 2011 10:33
Ercan Yazgan

Ercan Yazgan

Oracle Technologies Specialist

1988 Yalova Doğumluyum, İlköğretimimi İstanbulda, Lise eğitimini ise memleketim olan Gümüşhane'de Anadolu Lisesinde tamamladım. Lisans eğitimimi ise Sakarya Üniversitesinde, hayalim olan bilgisayar mühendisliğinde tamamladım. Üniversitedeyken kariyer hedefimi database teknolojileri üzerine belirledim ve Oracle ile projeler geliştirdim. Her zaman yeniye ve yeniliğe olan ilgimden dolayı lisans projemde ODI ve OBIEE teknolojilerini kullanarak veri ambarı sistemlerine giriş yaptım. Şu an özel bir şirkette PLSQL developer olarak çalışmaktayım. İlgi alanlarım ve bildiğim teknolojiler; PLSQL, ODI, OBI, ETL Circle, Oracle Administration, RAC systems, Data Guard, ASM.

E-posta: Bu e-Posta adresi istek dışı postalardan korunmaktadır, görüntülüyebilmek için JavaScript etkinleştirilmelidir

1 comment

Login to post comments