delphi4arab منتديات دلفي للعرب
كيف يمكن التعديل والحذف في نفس الوقت؟ - نسخة قابلة للطباعة

+- delphi4arab منتديات دلفي للعرب (https://delphi4arab.net/forum)
+-- قسم : منتديات دلفي للعرب التعليمية (https://delphi4arab.net/forum/forumdisplay.php?fid=3)
+--- قسم : سؤال و جواب حول دلفي (https://delphi4arab.net/forum/forumdisplay.php?fid=15)
+--- الموضوع : كيف يمكن التعديل والحذف في نفس الوقت؟ (/showthread.php?tid=7625)

الصفحات: 1 2


كيف يمكن التعديل والحذف في نفس الوقت؟ - ALG2009 - 18-03-2016

السلام عليكم
جمعه مباركه للجميع

حاولت كثير ولكن لم أستطع ولذلك ارجو من المجيب أن يبين لي السبب

حيث كان الكود الخاص بي هو
كود :
ADOQuery1.Close; ADOQuery1.SQL.Text:='UPDATE table1 SET total=total-2 '; ADOQuery1.ExecSQL;

الكود يعمل جيدا ولكن عند إضافة سطر الحذف يتوقف عن العمل كما في المثال التالي

كود :
ADOQuery1.Close; ADOQuery1.SQL.Text:='UPDATE table1 SET total=total-2 '; ADOQuery1.SQL.Text:='delete from table1 where total = 0'; ADOQuery1.ExecSQL;


اريد حل ولكن ارجو منكم من يقول لي ماهو السبب في هذا الخطأ فبمجرد إضافة سطر الحذف يتوقف عن العمل


RE: كيف يمكن التعديل والحذف في نفس الوقت؟ - Manarsoft - 18-03-2016

Try using:

ADOQuery1.Close;
ADOQuery1.SQL.Text:='UPDATE table1 SET total=total-2 ';
ADOQuery1.ExecSQL;

ADOQuery1.Close;
ADOQuery1.SQL.Text:='delete from table1 where total = 0';
ADOQuery1.ExecSQL;


RE: كيف يمكن التعديل والحذف في نفس الوقت؟ - Delphi4Us - 19-03-2016

ينصح باستخدام Transction بحيث اما ان تتم العمليتين او لا

فمثلا تقوم بالتعديل ولا يتم الحذف لاي سبب


RE: كيف يمكن التعديل والحذف في نفس الوقت؟ - ALG2009 - 19-03-2016

(18-03-2016, 05:35 PM)Manarsoft كتب : Try using:

ADOQuery1.Close;
ADOQuery1.SQL.Text:='UPDATE table1 SET total=total-2 ';
ADOQuery1.ExecSQL;

ADOQuery1.Close;
ADOQuery1.SQL.Text:='delete from table1 where total = 0';
ADOQuery1.ExecSQL;
جزاك الله خير تم بنجاح ولكن عند الحذف يعلق الدلفي ويظهر رسال لقد تم إرفاق رسالة الخطأ


(19-03-2016, 08:03 AM)Delphi4Us كتب : ينصح باستخدام Transction بحيث اما ان تتم العمليتين او لا

فمثلا تقوم بالتعديل ولا يتم الحذف لاي سبب

هل ممكن مثال


RE: كيف يمكن التعديل والحذف في نفس الوقت؟ - Manarsoft - 19-03-2016

لم أفهم الرسالة بالعربية


RE: كيف يمكن التعديل والحذف في نفس الوقت؟ - ALG2009 - 19-03-2016

يبدو أنها تتعلق بقواعد الببيانات access اي انه تم التغيير في المفتاح الرئيسي او من هذا القبيل فالدلفي يعلق ويتوقف عن العمل فانا ايضا أردتها ان تكون بلغة أخرى ولكن للأسف ظهرت بالعربية
فالرساله لها علاقة بقواعد البيانات وهي عند الحذف تظهر وتخبرك بأنه تم تغيير المفتاح الرئيسي السبب أو لحلحل هذه المشكلة غير واضح


RE: كيف يمكن التعديل والحذف في نفس الوقت؟ - Manarsoft - 19-03-2016

لماذا لا تستعمل Absolute Database ؟


RE: كيف يمكن التعديل والحذف في نفس الوقت؟ - Delphi4Us - 19-03-2016

كود :
try Adoconnection1.beginTransction; ADOQuery1.Close; ADOQuery1.SQL.Text:='UPDATE table1 SET total=total-2 '; ADOQuery1.ExecSQL; ADOQuery1.Close; ADOQuery1.SQL.Text:='delete from table1 where total = 0'; ADOQuery1.ExecSQL AdoConnection1.commit; expection Adoconnection1.RollBack end;



RE: كيف يمكن التعديل والحذف في نفس الوقت؟ - ALG2009 - 19-03-2016

(19-03-2016, 03:16 PM)Manarsoft كتب : لماذا لا تستعمل Absolute Database ؟
كود :
إستخدمت أكسس لأن قاعدة بيانات البرنامج صغيره والاكسس مثبت تقريبا في جميع الأجهزه وهل Absolute Database يجب تثبيته ؟

(19-03-2016, 04:51 PM)Delphi4Us كتب :
كود :
try Adoconnection1.BeginTrans; try ADOQuery1.Close; ADOQuery1.SQL.Text:='UPDATE table1 SET total=total-2 '; ADOQuery1.ExecSQL; ADOQuery1.Close; ADOQuery1.SQL.Text:='delete from table1 where total = 0'; ADOQuery1.ExecSQL ADOConnection1.CommitTrans; Except ON  E:Exception DO ADOConnection1.RollbackTrans; end; end;

نفس الخطأ

مشكل بمعنى الكلمة هل منكم من مرت عليه هذه المشكلة


RE: كيف يمكن التعديل والحذف في نفس الوقت؟ - Mr.DOS - 20-03-2016

سلام عليكم
قم بإخراج الشرط المساواة total = 0
قبل تنفيذ الاستعلام الثاني delete

ارفق مثال