كيف يمكن نقل سجيلات من جدول الى اخر باستعمال الفلترة مع العلم ان DatabaseName مختلفة
#24
[quote pid='44963' dateline='1523397088']
PHP كود :
begin
DM1
.Source.close;
DM1.Source.open;
DM1.Source.first;

for 
i:= 0 to DM1.Source.FieldCount-1 do

While 
Not DM1.Source.eof  Do

 Begin

  With DM1
.destination Do
 
    Begin
     Active
:=False;
 
    SQL.Clear;
 
    SQL.Add('Insert into customer (id, FIRSTNAME,LASTNAME,CITY,COUNTRY)');
 
    SQL.Add('Values (:b1 , :b2 , :b3 , :b4 , :b5)');
 
    params[0].value:= DM1.source.Fields[0].Value;
 
    params[1].value:= DM1.source.Fields[1].Value;
 
    params[2].value:= DM1.source.Fields[2].Value;
 
    params[3].value:= DM1.source.Fields[3].Value;
 
    params[4].value:= DM1.source.Fields[4].Value;
 
    Params[i].Value := DM1.source.Fields[i].Value;
 
    ExecSQL;
 
    End;
 
  DM1.source.next;
End; 
 

بسم الله الرحمن الرحيم
السلام عليكم
اعتدر هناك خطأ لم انتبه اليه
الكورس يعمل بدون اي مشكل بحدف 
for i:= 0 to DM1.Source.FieldCount-1 do
و كدالك حدف
 Params[i].Value := DM1.source.Fields[i].Value;

وهده الطريقة الاولى التي سبق و ان طرحتها في موضوعي هدا اعلاه
 ولكن حبد لو انه هناك طريقة اخرى من اجل تقليص هده الكتابة لانه باستعمال مثلا عدد كبير من الحقول يصبح الكود مملء نوعا ما
; params[0].value:= DM1.source.Fields[0].Value
; params[1].value:= DM1.source.Fields[1].Value
; params[2].value:= DM1.source.Fields[2].Value
; params[3].value:= DM1.source.Fields[3].Value
; params[4].value:= DM1.source.Fields[4].Value

فمثلا لو نستعمل Array فلنفكر معا نحن اعضاء المنتدى من اجل تقليص هدا الكود و بارك الله فيكم جميعا 

[/quote]
بكاء العين يفضح وبكاء القلب يذبح والبكاء من خشيه الله يربح اللهم اجعلنا ممن يبكى من خشيتك

الرد


الردود في هذا الموضوع
RE: كيف يمكن نقل سجيلات من جدول الى اخر باستعمال الفلترة مع العلم ان DatabaseName مختلفة - بواسطة AbdouProg - 11-04-2018, 11:56 AM

التنقل السريع :


يقوم بقرائة الموضوع: بالاضافة الى ( 1 ) ضيف كريم