Kayıt Silme
Forum kuralları
Forum kurallarını okuyup, uyunuz!
Forum kurallarını okuyup, uyunuz!
Kayıt Silme
Merhaba arkadaşlar hepinize kolay gelsin
benim sorum şu..2 tane tablo var bunlar birbirine bağlı..
tablo1 deki kayıt silindiği zaman tablo ikideki kayıtlardan sadece tablo 1 le ilişkili olanları nasıl sildirebilirim.
Tablo1 tablo2
Kayıt1 Kayıt1
Kayıt2
Kayıt3
Kayıt1 etkin iken TAblo2 den bu 3 kayıt görünüyor diyelim.
tablo1 deki kayıt1 i sildik tablo2 deki kayıt1,kayıt2,kayıt3 (hepsini) nasıl sildirebilirim.Fikri olan yardımcı olursa sevinirim.
Herkese Kolay gelsin..........
benim sorum şu..2 tane tablo var bunlar birbirine bağlı..
tablo1 deki kayıt silindiği zaman tablo ikideki kayıtlardan sadece tablo 1 le ilişkili olanları nasıl sildirebilirim.
Tablo1 tablo2
Kayıt1 Kayıt1
Kayıt2
Kayıt3
Kayıt1 etkin iken TAblo2 den bu 3 kayıt görünüyor diyelim.
tablo1 deki kayıt1 i sildik tablo2 deki kayıt1,kayıt2,kayıt3 (hepsini) nasıl sildirebilirim.Fikri olan yardımcı olursa sevinirim.
Herkese Kolay gelsin..........
***********************************
Kamil odur ki; koya dünyada bir eser,
Eseri olmayanın, yerinde yeller eser.
***********************************
Kamil odur ki; koya dünyada bir eser,
Eseri olmayanın, yerinde yeller eser.
***********************************
Cevap
Tamam anladımda biraz daha açarmısınız.
Bu programı mutlaka yapmam lazım..
Ben table kullanıyorum.
bunu table da yapmak istiyorum.......
Query de yazıyorum ama table başladım işe query'e geçiş yaptığımda hatalar var.
o zaman table da olmazsa hem table kullanarak hemde query le nasıl yapabilirim.
Kolay gelsin.
Bu programı mutlaka yapmam lazım..
Ben table kullanıyorum.
bunu table da yapmak istiyorum.......
Query de yazıyorum ama table başladım işe query'e geçiş yaptığımda hatalar var.
o zaman table da olmazsa hem table kullanarak hemde query le nasıl yapabilirim.
Kolay gelsin.
***********************************
Kamil odur ki; koya dünyada bir eser,
Eseri olmayanın, yerinde yeller eser.
***********************************
Kamil odur ki; koya dünyada bir eser,
Eseri olmayanın, yerinde yeller eser.
***********************************
mesela iki tablonda ıd numarası ile birbirine bağlantı kurmuş olduğunu varsayalım. Hangi tablodan kayıt sileceksen buradaki ıd alanındaki numarayı al, diğer silmek istediğin tabloda arama yaptır. Sonuç bulunduğunda istediğin alanları silersin.
Çözemezsen daha açık yazarım. Ama bu tafsiye edilen bir yöntem değil bence mustafa beyin dediği şekilde veri tabanından yaparsan daha iyi olur.
Çözemezsen daha açık yazarım. Ama bu tafsiye edilen bir yöntem değil bence mustafa beyin dediği şekilde veri tabanından yaparsan daha iyi olur.
Fikren emir almazsan, esir olursun ikisinin ortası yoktur.
Cevap
Sizin dediğiniz yöntem'i daha açık şekilde yazabilirmisiniz.
Query kullanarak başka bir şekilde çözme imkanı varmı...
birazdaha detaylı bir fikir alabilirmiyim...Programın yavaşlamasını istemiyorum...
Kolay gelsin...........
Query kullanarak başka bir şekilde çözme imkanı varmı...
birazdaha detaylı bir fikir alabilirmiyim...Programın yavaşlamasını istemiyorum...
Kolay gelsin...........
***********************************
Kamil odur ki; koya dünyada bir eser,
Eseri olmayanın, yerinde yeller eser.
***********************************
Kamil odur ki; koya dünyada bir eser,
Eseri olmayanın, yerinde yeller eser.
***********************************
Vedat slm, detayına inmeden (DB Trigger, BD Procedure, DB Foreign Vs.) yapmak istiyorsan şunu kullan...
Sanırım Table1 ve Table2 birbirine bağlı ekranda. Table1 deki aktif kayıt değiştiğinde Table2 yenileniyor ve Bağlı olanlar gösteriliyor...
o zaman Table1 in onBeforeDelete olayına şunları yaz!
yada biraz hızlı olsun istiyorsan!
Delete Button tıklandıktan sonra
Sanırım Table1 ve Table2 birbirine bağlı ekranda. Table1 deki aktif kayıt değiştiğinde Table2 yenileniyor ve Bağlı olanlar gösteriliyor...
o zaman Table1 in onBeforeDelete olayına şunları yaz!
Kod: Tümünü seç
Table2.DisableControls;
try
while not Table2.isEmpty do Table2.Delete;
finally
Table2.EnableControls;
end;
Delete Button tıklandıktan sonra
Kod: Tümünü seç
Qry.Close;
Qry.SQL.Clear;
Qry.SQL.Add('DELETE FROM TABLE2 ');
Qry.SQL.Add('WHERE MASTER_KOD= :pKOD');
If not Qry.Prepared then Qry.Prepare;
Qry.ParamByName('pKOD').asString := Table1MasterKod.AsString;
Qry.ExecSQL;
Table1.Delete; // Ana kaydıda sil
-
- Üye
- Mesajlar: 4
- Kayıt: 15 Eki 2005 11:11
- pasa_yasar
- Üye
- Mesajlar: 570
- Kayıt: 07 Haz 2004 12:35
bence table.delete kullanma daha önce yaptığım programlarda table silerken hata verdi veya gridle ilişkili olduğu için tam silmedi. buda çok ciddi sorunlar çıkarır. bazen tam siler fark edemeyebilirsin.ekranda ana id silinse bile raporlarda sorun yaşarsın ve veritabanı gereksiz yere şişer. en iyisi query kullanmandır.
query1.Close;
query1.SQL.Clear;
query1.SQL.Add('Delete from satisbilgi where takipno='+table1autono.AsString);
query1.ExecSQL;
query1.Close;
query1.SQL.Clear;
query1.SQL.Add('Delete from satisbilgi where takipno='+table1autono.AsString);
query1.ExecSQL;