الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

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

بدأه heraiz في 22 مايو 2014 · 2 رد · 1,335 مشاهدة · في لغة Delphi
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

عندي قاعدة بيانات و اريد تحديث حقل الى قيمة معينة و لكن قاعدة البيانات تحتوي على حوالي 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;
فهل من طريقة جديدة او دالة تساعد على اسراع عملية التحديث

#2

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

update tablename set column=column2/1000*11

#3

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

 

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

 

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

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

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

 

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

1

وَ قُلِ اعْمَلُوا فَسَيَرَى اللهُ عَمَلَكُمْ وَ رَسُولُهُ وَ الْمُؤْمِنُونَ

صدق الله العظيم

مواضيع مشابهة