Silmek istedigin kayta ait bir anahtar alan (id,no vs.) belirleyip
Delete from TABLODAN where id=5 gibi bir sql cumlesi ile id si 5 olan kayıtı silersin
eger amacın dbgrid de aktif kayıtı silmek ise table1.delete yada datasource.dataset.delete demen yeterli
tam olarak aklındakini soylersen daha yardımcı olabilirim
Benim kullandığım yöntem, DBGrid'de çift tıklandığında değerler formun üst kısmındaki edit,combox v.b. lere yazdırıyorum. Sil denildiğinde form üzerindeki bilgilerden anahtar kelime(leri) kulanarak silmeyi yaptırıyorum. Örnek yazacak olursak;
Daha ayrıntılı olarak şöyle anlatayım.
Query1 ile Urun_bilgileri isimli veri tabanındaki bilgileri
DBGrid1 e aktarıyorum. Urunadi,Urunkodu,Tarih vs.
Şimdi Örneğin listelenen kayıtlardan 1. veya 10. kaydı silmek
istiyorum. Fare ile silinmek istenen kayda geleceğim ve silme işlemini
yapacağım. Table1 ile listelenen kayıtlar Table1.Delete komutu ile
silinebiliyor, fakat veritabanına Query1 ile bağlantı kuruyorum.
Yani DataSource1 in DataSet i Query1 e bağlı. sorunum bu.
iyi çalışmalar.ilgilenen arkadaşlara teşekkür ederim.
tablonda tekil bir alan varsa ona göre silebilirsin. Mesela ürün kodu olabilir. Tekillikten kasıt, o değerden tabloda bir tane olacak, başka olmayacak. Mesela ürün kodu 10 olan kayıt 1 tane olacak. Bu durumda böyle bir kayıtı silmek için :
DELETE FROM URUN_BILGILERI
WHERE URUN_KODU='10'
gibi bir SQL komutu ile silebilirsin.
NOT : Bu iş için ayrı bir Query kullan.
NOT 2 : Bu sql komutunu Query'e nasıl eklerim diyorsan, sitede veritabanı bölümündeki "SQL cümlesini Query'e eklemek" yazısını oku.
Sanırım sorun mouse ile silmek istediğim kayıtları nasıl seçerim? Eğer bu ise sorun ilk mesajımda da attığım gibi be nçift tıklayarak forma getirtiyorum kayıtı. Bunun için de DBGrid'in doubleclick eventına şunu yazıyorum:
Query1.Delete komutu işini görecektir.
delete komutu table nesnesine has bir komut değil. Query dede çalışacaktır. Seçtiğin kaydın üstüne konumlandığında bir butonun onclick olayına bu kodu yaz. Tıkladığında aktif cursordeki kayıt silinecektir.
Sevgiler..