25-08-2017, Saat: 14:51
Sağolasın Hocam, cevap çok işime yaradı. Allah ne muradın varsa versin...
Firebird veri kaybı
|
25-08-2017, Saat: 14:51
Sağolasın Hocam, cevap çok işime yaradı. Allah ne muradın varsa versin...
25-08-2017, Saat: 15:26
(25-08-2017, Saat: 14:24)Tuğrul HELVACI Adlı Kullanıcıdan Alıntı:SELECT A.FieldA, A.FieldB, B.FieldC, B.FieldD FROM TableA A INNER JOIN TableB B ON A.ID = B.AID Bu tip bir durumda sadece A tablosu etkileniyor diye dusunuyordum. Tum kodlari elden gecirmek gerekiyor ozaman. Bu arada dataset in delete sql bolumundeki kod "delete from A where id=:id" seklinde olsa yine de B tablosu etkileniyor mudur? (fibplus kullaniyorum dataset in SelectSQL,DeleteSQL,UpdateSql ozellikleri mevcut)
25-08-2017, Saat: 15:32
(25-08-2017, Saat: 15:26)klavye Adlı Kullanıcıdan Alıntı:(25-08-2017, Saat: 14:24)Tuğrul HELVACI Adlı Kullanıcıdan Alıntı:SELECT A.FieldA, A.FieldB, B.FieldC, B.FieldD FROM TableA A INNER JOIN TableB B ON A.ID = B.AID İlgili bileşeni ve çalışma mantığını bilmiyorum ama eğer Delete Sql bölümü var ise ve oraya da belirttiğiniz gibi bir delete sql cümleciği yazdıysanız bahse konu durum oluşmamalı mantıken. Benim verdiğim örnek genellikle bu tarz sorgular için ADO component'leri ile çekilen datalar'ı yine aynı component üzerinden (TDataSet.Delete) silmeniz durumunda geçerli olur. Mantıken veri tedarikçi katmanı, silme emrini hangi tablodan yapacağını bilemediğinden her iki tablodan da birbirine bağlı olan kayıtları silme yolunu tercih ediyor olabilir. Tabii bu bir tahmin. Netice de elimizde ADO katmanının kaynak kodları bulunmuyor
Mal sahibi, mülk sahibi
Hani bunun ilk sahibi ? Mal da yalan mülk de yalan Var biraz da sen oyalan...
25-08-2017, Saat: 15:38
anladım teşekkürler Tugrul bey.
25-08-2017, Saat: 15:41
(25-08-2017, Saat: 15:38)klavye Adlı Kullanıcıdan Alıntı: anladım teşekkürler Tugrul bey. Rica ederim.
Mal sahibi, mülk sahibi
Hani bunun ilk sahibi ? Mal da yalan mülk de yalan Var biraz da sen oyalan...
25-08-2017, Saat: 16:23
(25-08-2017, Saat: 14:24)Tuğrul HELVACI Adlı Kullanıcıdan Alıntı:SELECT A.FieldA, A.FieldB, B.FieldC, B.FieldD FROM TableA A INNER JOIN TableB B ON A.ID = B.AID JOIN kullandığım tüm sorgularda DataSeti ReadOnly yaptığımdan bu durum hakkında bir fikrim yoktu. Bu nedenle INNER JOIN UniDac ile ne yapar dedim, mySql ile test ettim. Unidac Delete sorgusu için TStrings tipinde SqlDelete özelliğini kullanıyor. Eğer SQL static kullanılırsa Generate SQL Insert, Update, Delete vs. sorgularınıda oluşturup bu özelliğe atabiliyor. Bu durumda : Kod: (Select All) SELECT Kod: (Select All) INSERT INTO yetkiler Kod: (Select All) UPDATE yetkiler Kod: (Select All) DELETE FROM yetkiler SELECT sorgusu hariç kalan sorguyu otomatik oluşturuyor. Statik Delete Sql ifadesinden dolayı silme işlemi sadece yetkiler tablosunda oldu dedim!. SELECT sorgusu hariç update, insert ve delete sql ifadelerini silerek denedim. Sonuç aynı, Unidac sadece yetkiler tablosunda silme yapıyor. Yanımda Firebird veri tabanı olmadığından IBDataSet'i test edemiyorum. UniQuery TCustomDADataSet = class (TMemDataSet) -> TMemDataSet = class(TDataSet) sınıfından, TIBDataSet = class(TIBCustomDataSet) -> TIBCustomDataSet = class(TDataSet) sınıfından türetilmiş. TDataSet ortak Selef, ama halefleri farklı. Biri TMemDataSet diğeri TIBCustomDataset. Bu nedenle Tuğrul hocamın dediği gibi muamele ediyor olabilir. |
« Önceki Konu | Sonraki Konu »
|
Konu ile Alakalı Benzer Konular | |||||
Konular | Yazar | Yorumlar | Okunma | Son Yorum | |
pardusda dbeaver ıle fırebırd kullanımı hakkında | sadikacar60 | 8 | 642 |
29-02-2024, Saat: 17:50 Son Yorum: Hayati |
|
Firebird Sound_ex Kodu. | COMMANDX | 1 | 310 |
28-01-2024, Saat: 01:56 Son Yorum: maydin60 |
|
Firebird ile FIFO Hesaplama Nasıl yapılır? | klavye | 0 | 367 |
17-08-2023, Saat: 12:33 Son Yorum: klavye |
|
IBExpert ile Firebird Veri Kurtarma | DelphiCanR | 6 | 7.533 |
19-07-2023, Saat: 14:42 Son Yorum: baloglurecep |
|
Firebird Bozuk Dosya Hk. | dark12side | 1 | 399 |
07-06-2023, Saat: 21:53 Son Yorum: mrmarman |