Examples Delphi

"
14 Aralık 2005 19:23
tdbgrid ve SQL ile silme hakkında yardım
selam arkadaşlar,
tdbgrid içine listelettiğim kayıtları tek tek seçerek ve
SQL ile table den nasıl silebilirim. konu ile ilgili
SQL kodunu yazarsanız sevinirim.
delete komutunu kullandım fakat seçtiğim alanadaki tüm kayıtları siliyor.
ben sadece seçilen kayıtların silinmesini sağlayan SQL kodunu istiyorum.
saygı ve seviglerimle hoşçakalın...
memolipascal
"
*********************************************************
tablo adı tablox varsayalım ve sira_no diye bir alanı olsun.
Dbgrid in bağlı olduğu nesne de Query1 olsun.
Query2.close;
Query2.sql.clear;
Query2.sql.add(DELETE FROM tablox WHERE sira_no='+Query1.fieldbyname('sira_no').asstring);
Query2.execSQL;
Karahan1453
*********************************************************
çok teşekkür ederim de
Query2 ifadesini neden kullandığını anlayamadım kodlamada hata olabilirmi saygılar..
memolipascal
*********************************************************
15 Aralık 2005 14:06
Query1 de listeleme işlemini , Query2de de silme işlemini yaptırmak için.
Yani iki farklı işlem için iki tane Query koydum.
Bir tanede koyabilirsin tabiki.Ama sildikten sonra listeleme için
gerekli SQL satırını tekrar yazmalısın.
Karahan1453
*********************************************************
merhaba,
karahan1453 arkadaşımıza teşekkürler...
memolipascal, görüyorum ki veri tabanına hemen uyum sağlamaya başlamışsın.
güzel...
sorunun cevabını daha kısa bir kod ile çözümleyebiliriz:
query1 sorgu sonuçlarındaki seçili olan kayıtları silmek için
şunları yaptırman gerekiyor:
query1 in ilişkilendirildiği dbgrid nesnesinin özelliklerinden,
options sekmesine gir, multiselect özelliğine true değeri ata.
(çoklu seçim yapmasına izin verdirmek için)
gerekirse rowselect özelliğine de true değeri ata.
//...written by neoturk 16.12.2005
//kaç adet seçili satır olduğunu öğrenmek için
showmessage'seçili satır sayısı = '+inttostr(dbgrid1.SelectedRows.Count));
//seçili olan satırların hepsini silmek için
dbgrid1.SelectedRows.Delete; //veri tabanında siler
(ben bu yöntemi kullanıyorum, kod kalabalığı başka yerlerde gerekli...)
bu kadar...........
kolay gelsin_
saygılarımla_