IBDataSet1.Close;
IBDataSet1.SELECTSQL.Clear;
IBDataSet1.SELECTSQL.Add('delete from madyaz');
IBDataSet1.ExecSql;
Merhaba arkadaşlar, yukarıdaki kodlar ile ibdataset kullanarak veritabanındaki dosyadan verileri silebiliyordum, fakat şu anda IBDataSet yerine pFIBDataSet kullanınca hata veriyor. Fibplus bileşenleri ile veritabanı tablosundan verileri silmek için başka yöntem mi var?. Yardımcı olursanız sevinirim.
pFIBDataSet ile veri tabanından veri silme
Forum kuralları
Forum kurallarını okuyup, uyunuz!
Forum kurallarını okuyup, uyunuz!
Re: pFIBDataSet ile veri tabanından veri silme
hata mesajını paylaşmadığınız için yardımcı olmak çok zor.
Re: pFIBDataSet ile veri tabanından veri silme
ExecSql komutunu kabul etmiyor. Verdiği hata mesajı "E2003 Undeclared identifier: 'ExecSql'"
-
- Üye
- Mesajlar: 135
- Kayıt: 14 Kas 2005 12:24
Re: pFIBDataSet ile veri tabanından veri silme
pFibDataset in ExecSQL özelliği yok ama pFIBQuery ExecQuery özelliği var.
Dataset kullanmayı tercih ediyorsanız FibPlus Dataset in DeleteSQL özellğini kullanmayı deneyin.
Not : AutoCommit değerini True yapmayı unutmayın.
gibi...
Dataset kullanmayı tercih ediyorsanız FibPlus Dataset in DeleteSQL özellğini kullanmayı deneyin.
Not : AutoCommit değerini True yapmayı unutmayın.
Kod: Tümünü seç
With pFIBDataSet1 begin
Close;
DELETESQL.Clear;
DELETESQL.Add('delete from madyaz');
Open;
Active := True;
Delete;
end;
Re: pFIBDataSet ile veri tabanından veri silme
Teşekkürler adnansirca ,
Verdiğiniz kodlar işimi gördü. Allah razı olsun. Ama ilk olarak gösterdiğiniz yoldan başaramadım.
Yani,
pFIBQuery1.close;
pFIBQuery1.sql.clear;
pFIBQuery1.sql.Text:= ('DELETE FROM madyaz');
pFIBQuery1.ExecQuery;
bu kodlar ise verileri silmedi.
Verdiğiniz kodlar işimi gördü. Allah razı olsun. Ama ilk olarak gösterdiğiniz yoldan başaramadım.
Yani,
pFIBQuery1.close;
pFIBQuery1.sql.clear;
pFIBQuery1.sql.Text:= ('DELETE FROM madyaz');
pFIBQuery1.ExecQuery;
bu kodlar ise verileri silmedi.
-
- Üye
- Mesajlar: 135
- Kayıt: 14 Kas 2005 12:24
Re: pFIBDataSet ile veri tabanından veri silme
pFibQuery1->Options->qoAutoCommit değerini true yapın.
FibPlus bileşenlerinde delete,update,insert işlemleri için AutoCommit özelliğini true yapmak gerekir.
FibPlus bileşenlerinde delete,update,insert işlemleri için AutoCommit özelliğini true yapmak gerekir.
Re: pFIBDataSet ile veri tabanından veri silme
pFibQuery1->Options->qoAutoCommit değerini true yapınca oldu fakat bu durumda diğer pfdataset'ler ile işlem yapmak istediğimde bu sefer datasetler closed mesajı alıyorum.
-
- Üye
- Mesajlar: 135
- Kayıt: 14 Kas 2005 12:24
Re: pFIBDataSet ile veri tabanından veri silme
Bunun sebebi Transaction ayarlarını yapmamanızdır.habikus yazdı:pFibQuery1->Options->qoAutoCommit değerini true yapınca oldu fakat bu durumda diğer pfdataset'ler ile işlem yapmak istediğimde bu sefer datasetler closed mesajı alıyorum.
Çözümü ise şu şekildedir;
Database bağlantınız için gerekli bileşenler
1 Adet TpFibDatabase
2 Adet TpFibTransaction(Adları ReadTR,WriteTR olsun mesela)
Kısacası FibDatabase için iki adet Transaction bağlamış olmanız gerekir.
Bunlardan biri Read diğeri Write için.
FibDatabase Ayarları
FibDatabase->DefaultTransaction->ReadTR
FibDatabase->DefaultUpdateTransaction->WriteTR
Bu ayarlardan sonra
pFibQuery1->Options->qoStartTransaction->True
pFibQuery1->Options->qoAutoCommit->True
pFibQuery1->Transaction->WriteTR
şeklinde ayarlarınızı yapın.