Not : Yazılar Yaşar İslam’a aittir. İzni ile sayfamızda paylaşılmaktadır. Yazar tanıtım resmi için bunun görülen resim yazıyı yayına hazırlayan kişiye aittir. İletişim kurduğunuzda geri dönüş alabilmeniz için.

Merhabalar arkadaşlar 6. dersimizle yeniden beraberiz. Bu yazımda sizlere sorgu bazlı flashback işlemini neden yapılmasına gerek duyulduğunu anlatmaya çalışacağım.

Diyelim ki veritabanından biri yanlışlıkla bir satırı sildi ve sildiği satırla ilgili hiç birşey hatırlamıyor üstüne bir de commit edilmiş olsun. Rollback ile geride getiremeyeceğiz çünkü commit edildi.Ama bir şekilde o dataları kurtarmamız lazım.Ne yapmalıyız bu durumda ? Gelin beraber o silinen satırı veya satırları geri getirmeye çalışalım.



Önce sehirler isminde bir tablo oluşturalım.



CREATE TABLE sehirler (plakano number ,adi varchar(20));



Sonra sehirler tablomuzo data girişi yapalım.



INSERT INTO sehirler VALUES (6,‘Ankara’);

INSERT INTO sehirler VALUES (34,‘İstanbul’);

INSERT INTO sehirler VALUES (53,‘Rize’);

COMMIT;



 

  Verilerimiz kontrol edelim.



select * from sehirler;




Sonra plakono 34 olan satırı silelim ve commit yapalım.



DELETE FROM sehirler where plakano=34 ;

COMMIT;



select * from sehirler;






10 dakika sonra o satırı yanlışlıkla silindiği farkedilsin.



Silinen satırları bulmak için :



select * from sehirler as of timestamp sysdate-10/1440


minus

 

select * from sehirler;



Veya eklenen satırları bulmak içinde tam tersini yapıyoruz :



select * from sehirler


minus

 

select * from sehirler as of timestamp sysdate-10/1440;



Silinen satırları tabloya eklemek için :



insert into sehirler

select * from sehirler as of timestamp sysdate-10/1440


minus

 

select * from sehirler;


İşte bu kadardı kıymetli arkadaşlar bir sonraki derste görüşmek üzere iyi çalışmalar.

Yaşar İslam

Facebook Sayfamizdan Bizleri Takip Edebilirsiniz
Murat Bilginer

Industryolog Akademi Founder – Endüstri Mühendisi
Canias ERP Troia Geliştiricisi & Yazılım Uzmanı
7 Yıldır bildiğini paylaşmak için çabalayan bir blogger.

http://muratbilginer.net/