السلام عليكم ورحمة الله وبركته
هل بالامكان حفظ البيانات من المكون DBgrid الى قاعدة البيانات بخبطة واحدة بدون لووب Loop بالدلفي بريسم يمكن فعل ذلك وقلت ربما يمكن هنا ايضا .
والله الموفق
ربما لم اوضح الفكرة فيقول لي البعض استخدم هذه الطريقة
كود :
if DBGrid1.DataSource.DataSet.State in [dsInsert, dsEdit] then
DBGrid1.DataSource.DataSet.Post;
ولكن المقصود اضافة عدد من الصفوف الى قاعدة البيانات دفعة واحدة وبدون لووب وتكرار وليس من الضروري ان تكون من DBgrid ربما من StringGrid
معظم قواعد البيانات وطرق الاتصال توفر طريقة لحفظ مجموعة من السجلات بشكل مؤقت
يمكن ذلك بدلفي باستخدام TClientDataSet
حاول التوضيح بمثال إن أمكن
السلام عليكم
اهلا اخي كاش واحد ان اختياري للمكون DBgrid اضاع وشوش الفكرة
تصور معي ان هناك StringGrid مليئة بالبيانات أي فيها اربعة او خمسة صفوف وخمسة اعمدة مثلا .
ارغب في ان ارسل هذه البيانات وحفظها في جدول بدون Loop مثل
كود :
For I=0 to AdoTable1.RecordCount -1 Begin
AdoTable1.Insert;
AdoTable1Mname.Value:=String1.Cell[I];
AdoTable1.Post;
AdoTable1.Next;
End;
أي يتم ارسال هذه الصفوف الخمسة دفعة واحدة وبعملية واحدة
السلام عليكم
ربما TClientDataSet فيه الحل لا ادري سأرى فلم استخدمه من قبل
لا تحضرني أي فكرة مماثلة الآن
لكن لو تخبرنا بالسبب الذي دفعك إلى البحث عن فعل ذلك، ربما نجد حلا بطريقة أفضل
السلام عليكم ورحمة الله وبركاته
السبب يا اخي انني احب الكود البسيط واتجنب اي شئ من الممكن ان يقع به خطاء او يحدث به حادث .
مع ADO.NET كان بامكاني ان ا خزن محتوى ViewGrid دفعة واحدة وكانت مريحة جداً.
اي اضيف رأس الفاتورة مثل رقمها وتاريخها وما الى ذلك بجدول وفي الجدول الثاني اضيف البظاعة دفعة واحدة .
ربما هو نوع من التعود
لا اعرف لا ارتاح الى اضافة البيانات بقاعدة البيانات في تكرار اشعر ان هذا غير مطمئن مع ان الامر يعمل على احسن مايرام حتى الان ولم يحدث خطاء ولو مرة واحدة .
وايضا من باب المعرفة والاطلاع لا تعرف متى تحتاج شيئا كهذا .
إقتباس :احب الكود البسيط واتجنب اي شئ من الممكن ان يقع به خطاء او يحدث به حادث
أوافقك الرأي
إقتباس :اي اضيف رأس الفاتورة مثل رقمها وتاريخها وما الى ذلك بجدول وفي الجدول الثاني اضيف البظاعة دفعة واحدة
شخصيا لم أكن بحاجة إلى حلقات لإضافات بيانات بهذا الشكل
يبدو لي الخلل في التصميم
ممكن مثال عملي لتوضيح الفكرة؟
وعليكم السلام ورحمة الله وبركاته
حسنا ساحاول وضع مثال قريبا لان سرعة الخط عندي انهارت تماما ورفع الملفات اصعب من تنزيلها ومثال بقاعدة بيانات يحتاج الى 1 ميغا تقريبا
لست بحاجة إلى رفع مرفق، من مشروع جديد اكتب كود Unit1 وقاعدة البيانات في شكل SQL بأصغر ما يمكن.