detail deki foringkeye değer atama

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
Kullanıcı avatarı
vedatkaba
Kıdemli Üye
Mesajlar: 866
Kayıt: 06 Oca 2004 06:50
Konum: DARICA/GEBZE

detail deki foringkeye değer atama

Mesaj gönderen vedatkaba »

Herkese kolay gelsinnn..

Master-Detail ilişkiyi falan hallettik herşey yolunda.Benim yaptığım master-detail ilişkide detaqil tabloya 1 den fazla kayıt girebiliyorum.ve bunu master tablomdaki primarykey e bağlı olan detaildeki foringkey le birleştirerek halettim. Ama ;;

Kod: Tümünü seç

var
          i:integer;
         begin
if (IBDataset2.state=dsinsert) then
       begin
       i:=IBDataset1Master_ID.assinteger;
       IBDataset2Detail_Foring.Asinteger:=i;
       end;
end;

  
Detail tabloya bağlı ıbdataset in beforepost olayına bu kodu yazarak master primery key değerini detailine otomatik atmasını sağladım.Bu olayı StoredProcedure veya Trigger la yapma şansım varmı.bu yöntem sağlıklı olurmu .

Kolay gelsin.
***********************************
Kamil odur ki; koya dünyada bir eser,
Eseri olmayanın, yerinde yeller eser.

***********************************
fduman
Moderator
Mesajlar: 2749
Kayıt: 17 Ara 2004 12:02
Konum: Ankara

Mesaj gönderen fduman »

Ben de bu şekilde kullanıyorum ancak farklı eventte. OnNewRecord içinde kullanırsan insert modunda mı diye kontrol etmene gerek kalmaz. Her insert çağırısında OnNewRecord çağırılır, bunun içinde iken :

Kod: Tümünü seç

IBDataset2Detail_Foring.Asinteger:= IBDataset1Master_ID.assinteger;
yaparsın olur biter.
Kullanıcı avatarı
vedatkaba
Kıdemli Üye
Mesajlar: 866
Kayıt: 06 Oca 2004 06:50
Konum: DARICA/GEBZE

Mesaj gönderen vedatkaba »

Hocam teşekkür ederim sağolun...Gittiğimiz yol doğru yani.tek eksik orası ise sorun yok hallederiz.kolay gelsin.
***********************************
Kamil odur ki; koya dünyada bir eser,
Eseri olmayanın, yerinde yeller eser.

***********************************
Cevapla