tüm trigger ve foreign key kontrolleri disable etmek

Firebird ve Interbase veritabanları ve SQL komutlarıyla ilgli sorularınızı sorabilirsiniz. Delphi tarafındaki sorularınızı lütfen Programlama forumunda sorunuz.
Cevapla
iqprog

tüm trigger ve foreign key kontrolleri disable etmek

Mesaj gönderen iqprog »

şimdi progu bir yere verdim kullanıyorlar.
ama ben sonra veritabanında ve progda ufak değişiklikler yaptım.
eski yere yeni progu yüklemem için iki seçeneğim var
1-eski veritabanında yenisinde yaptığım herşeyi yaparak yenisi gibi yapmak.
2-eski veritabanındaki verileri yenisine atmak.

benim işime şuan 2. metod uyuyor.
fakat ufak bir problem var.
verileri atarken triggerların pasif olması gerek, aynı zamanda foreign key kontrollerinin de çalışmaması lazım ki verileri atarke sorun çıkmasın.

bunun tek bir şalteri var mıdır?
Kullanıcı avatarı
aslangeri
Moderator
Mesajlar: 4322
Kayıt: 26 Ara 2003 04:19
Konum: Ankara
İletişim:

Mesaj gönderen aslangeri »

s.a.
tetikleyicileri iptal etmek için

Kod: Tümünü seç

UPDATE rdb$triggers T SET T.rdb$trigger_inactive=1 WHERE (T.rdb$system_flag<>1)  or (T.rdb$system_flag IS NULL)
geri açmak içinse

Kod: Tümünü seç

UPDATE rdb$triggers T SET T.rdb$trigger_inactive=0 WHERE (T.rdb$system_flag<>1)  or (T.rdb$system_flag IS NULL)
bu sqlleri kullanabilirsin.
kolay gelsin.
Duyduğun Şeylerin Söylediklerim Olduğuna Eminim Ama
Anladığın Şeylerin Anlatmak İstediklerim Olduğuna Emin Değilim
iqprog

teşekkürler

Mesaj gönderen iqprog »

teşekkürler,

foreign_key için çözüm nedir?
Kullanıcı avatarı
aslangeri
Moderator
Mesajlar: 4322
Kayıt: 26 Ara 2003 04:19
Konum: Ankara
İletişim:

Mesaj gönderen aslangeri »

s.a.
foreign key için, trigerlarda olduğu gibi bir işlem olduğunu zannetmiyorum.
(varsa bilmiyorum)
ancak kayıtları aktarırken önce ana tabloyu sonrada fk ile bağlı olan tabloları aktarırsan sıkıntı çıkartmaz sanırım.
kolay gelsin.
Duyduğun Şeylerin Söylediklerim Olduğuna Eminim Ama
Anladığın Şeylerin Anlatmak İstediklerim Olduğuna Emin Değilim
Cevapla