الدرس الخامس في الدالفي كيفية البحث في قاعدة بيانات بالدلفي

Share:

السلام عليكم ورحمة الله وبركاته

- الدرس اليوم عن كيفية  البحث في قاعدة البيانات بستعمال  Edit فقط  للبحث في اكثر من حقل

 - كل ما نحتاجه لفعل ذالك هو قاعدة بيانات ( Data Base  او Access  او SQL Server ) تم نقوم بربطها بدلفي 

طريقة ربط قاعدة البيانات بدلفي :

1- اولا قيام بصنع قاعدة بيانات بإحدا البرامج لصنع قواعد البيانات .  
2- فتح برنامج الدالفي تم نقوم بوضع الادوات التالية :
    من قائمة الادوات نذهب الى ADO ثم نختار الادوات التالية : 
     * ADOConnection
     * ADOTable
    تم من قائمة الادوات نذهب الى Data Access  ثم نختار الاداة التالية :
     * DataSource


     الان سنقوم بربط بستعمال هده الادوات :

      I- نضغط على ADOConnection1  مرتين ستفح لنا هده الفورم

      II- تم نضغط ....build تفتخ لنا فورم اخرى


     III- نختار منها Microsoft OLE DB Provider for ODBC Drivers تم نضغط على Next 
 ملاحظ : لا احتم عليك هذا الاختيار يمكن اختيار مايناسبك لقد استعملت هذا الاختيار لنه يقوم بربط جميع الانواع القواعد البيانات
    IV- تظهر لنا الفورم التالية :




      







































وهكذا تتم عملية الربط دالفي بقاعدة البيانات 
   تم من قائمة الادوات نذهب إلى Data Controls  ثم نختار الأدوات التالية :
     * DBGrid
     * DBNavigator
نقوم الان بربط هذه المكونات كتالي :
اولا علينا بتعديل على خصائص ADOConnection كما يلي :

تم نقوم برط ADOTable بـ ADOConnection تم نقوم بختيار الجدول  وتصبح خصائص ADOTable كما يلي :



















تم نقوم برط DataSource مع ADOTable كما يلي :

تم نقوم بربط كل من BDGrid1 و DBNavigator بـ DataSource كتالي :



















 هكدا قمنا بإضهار الجدول في DBGrid 
تم قم بتشغيل البرنامج تم ضف عدة اشخاص في الجدول 



الان نعود الى الدرسنا 

الان نقوم باضافة Edit و label ثم نقوم بحدف الكتابة الموجودة في edit في text في الخصائص :


الان نضغط مرتين على Edit1 ونكتب الكود التالي للبحث في جميع خنات الجدول بتدالول : 
اي ان لم يجد النتيجة في الخانة الاولى ينتقل الى الثانية .........الخ 



procedure TForm1.Edit1Change(Sender: TObject);
Begin
If Edit1.Text='' then
ADOTable1.Filtered:=false   // فارغة edit  هنا اقف الفلتر عندما تكون الخانة 
Else
Begin
if ADOTable1.Locate('Nom',edit1.Text,[loPartialKey]) then   // هنا يقوم بتحقق من وجود الحرف في الاسم 
    begin
    ADOTable1.Filter:='Nom like '+quotedstr(edit1.Text+'%'); // هنا يقوم بتحقق من عملية الفلتر 
    ADOTable1.Filtered:=true;  // هنا يقوم بالفلتر
    end
    else
    begin
    ADOTable1.Filtered:=false; // هنا يقوم بالغاء الفلتر
    if ADOTable1.Locate('Prénom',edit1.Text,[loPartialKey]) then // هنا يقوم بتحقق من وجود  اللقب 
    begin
    ADOTable1.Filter:='Prénom like '+quotedstr(edit1.Text+'%');// هنا يقوم بتحقق من عملية الفلتر 
    ADOTable1.Filtered:=true;// هنا يقوم بالفلتر
    end
    else
    begin
      ADOTable1.Filter:='Nom like '+quotedstr(edit1.Text+'%');
      ADOTable1.Filtered:=true;
    end;
    end;
end;
end;


صور من تشغيل البرنامج 






ارجوا انكم استفدتم من هذا الشرح