السلام عليكم
إنتقلت من قواعد بيانات Absolute نحو Firebird لكن واجهتني مشكلة حذف السجلات، فحين أقوم بحذف سجل واعادة Refresh يظهر مجددا، فهل هناك طريقة للحذف؟
السلام عليكم هل استخدمت ClientDataSet ما هي مكونات الاتصال
أستخدم مكونات فايرداك FireDAC
السلام عليكم.
تحقق مما يلي :
1- اذا كنت تستعمل transction لا تغفل عن commit.
2-ربما يكون الخطأ برمجي ، فاستعمل التشغيل خطوة خطوة.
3-وربما تكون قاعدة البيانات معطوبة ، حاول اصلاحها.
قلت لك انا جديد في الفيربيرد هلا شرحت لي Transaction
وعليك السلام
PHP كود :
DataModule1.Table1.sql.clear;
DataModule1.Table1.sql.add('DELETE FROM TABLE1 ');
DataModule1.Table1.sql.add(' where id = :N');
DataModule1.Table1.ParamByName('N').AsInteger:= code;
DataModule1.Table1.ExecSQL;
//xxxxxxxxxxxxxxxxxxxxxxxxxxxxx
DataModule1.Table1.sql.clear;
DataModule1.Table1.SQL.Text := 'select * from TABLE1';
DataModule1.Table1.Open ;
في هذا المثال مكون من جزئين إستعملت لغة sql:
1- الجزء الاول لحذف سجل يجب يكون له رقم خاص ووحيد لتفادي حذف الحقول المكررة
2- الجزء الثاني إعادة فتح الجدول
ربم تكون خاصية للقراءة فقط مفعلة لذلك لن يقوم بحذف السجلات قم بجعل الخاصية false
السلام عليكم حاول تغيير cached updates الى false او استخدم ApplyUpdate