• 0
heraiz

بخصوص تحديث قاعدة معطيات

سؤال

عندي قاعدة بيانات و اريد تحديث حقل الى قيمة معينة و لكن قاعدة البيانات تحتوي على حوالي 20000 سجل و عملية التحديث تستغرق زمما كبيرا و اريد ان ابحث دالة لتسريع تحديث قيمة الحقل
و هذه الدالة التي استعملتها في عملية التحديث و لكن تستغرق اكثر من 45 دقيقة
table1.First;
while not table1.Eof do
begin
table1.Edit;
table1.fieldbyname('cle').value:=(((table1.fieldbyname('N_COMPT').value div 10000000)*11));
table1.Next;
end;
end;
فهل من طريقة جديدة او دالة تساعد على اسراع عملية التحديث

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه

2 إجابة على هذا السؤال .

  • 0

استخدم lستعلام sql

update tablename set column=column2/1000*11

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0

السلام عليكم...

 

بالطبع سيكون استعمال حلقة بهذا الشكل غير عملي و مرهق و بطيء جداً - تصور لو كانت السجلات بمئات الألوف أو الملايين!!!

 

كما قال أخونا محمد: استخدم استعلاماً (Query) لتنفيذ جملة SQL التالية:

UPDATE table_name SET cle = (N_COMPT / 10000000) * 11

حيث table_name هو اسم الجدول في قاعدة البيانات.

 

نرجو الاستفادة و السلام.

1

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه

  • يستعرض القسم حالياً   0 members

    لا يوجد أعضاء مسجلين يشاهدون هذه الصفحة .