عرض السجلات والإضافة والإزالة
أولاً إذا لم تقراً الدرس الأول لقواعد البيانات فسيكون درس اليوم صعباً قليلاً وهذه ليست بمشكلة إذا كنت تعرف العمل على أكسس والربط بين برنامجك وقاعدة البيانات
في درس اليوم سوف نعرف كيف نعرض السجلات في البرنامج وكيفية إضافة سجلات جديدة وحذفها وطريقة التنقل بين السجلات. والبحث عن سجل
إذا درس اليوم هو أهم درس بالنسبة للتعامل مع قواعد البيانات.
طبعاً عليك فتح المشروع الذي أخذناه في الدرس الأول لقواعد البيانات .. لهذا ذكرنا أنه عليك أن تتابع دروس قواعد البيانات خطوة بخطوة..
جهز الفورم بالأدوات التالية :
يمكنك إخفاء Data1 عن طريق خاصية Visible .
الأن كيفية عرض السجلات في أدوات النصوص Text:
هناك عدة طرق لهذه العملية :
أولا: عن طريق الخصائص ل Text وهذه العملية هي الأفضل والأسرع :
حدد Text1 وهي المخصصة لعرض رقم الهاتف . ثم إذهب إلى صندوق الخصائص وغيرها كما في الشكل التالي:
1 - أنقر فوق الخاصية DataSource ثم أنقر على السهم لعرض أسماء أدوات قواعد البيانات . طبعاً هي واحدة Data1 حددها.
2- إلى خاصية DataField أنقر فوق السهم لعرض أسماء الحقول . سوف تظهر لك ثلاث حقول هي التي انشأناها في الدرس السابق
tell:رقم الهاتف
name:الإسم
adr :العنوان
كما قلنا أن Text1 مخصصة لعرض رقم الهاتف فعليك إختيار الحقل tell . وكذلك عليك العمل مع Text2 وText3
وبهذا إنتهيت من الربط.
الأن نأتي إلى كتابة الأحداث :
طريقة الربط الأولى:
في حدث Load للفورم ضع الكود التالي:
Combo1.AddItem 'بحث عن الرقم'
Combo1.AddItem 'بحث عن الإسم'
Combo1.AddItem 'بحث عن العنوان'
On Error GoTo data_error
Data1.DatabaseName = App.Path & '\tell.mdb'
Data1.Refresh
Data1.Recordset.AddNew
Exit Sub
data_error:
MsgBox 'لم يتم العثور على قاعدة البيانات', vbCritical, 'خطأ' |
السطور الثلاث الأولى للإضافة إلى القائمة Combo1
ربط قاعدة البيانات بالبرنامج وتحديثها عند التحميل. وعرض رسالة خطأ عند عدم وجودها.
في زر الأضافة ضع الكود التالي:
الإضافة لقاعدة البيانات
في زر الحذف ضع الكود التالي :
On Error GoTo data_error
If MsgBox('هل تريد حذف السجل بالتأكيد؟', vbQuestion + vbYesNo, 'تأكيد حذف') = vbYes Then
Data1.Recordset.Delete
Data1.Recordset.MoveNext
End If
Exit Sub
data_error:
MsgBox 'لم يبقى سجلات', vbCritical, 'خطأ' |
السطر الأول معروف التصريح عن الخطأ.
السطر الثاني: رسالة تأكيد حذف.
السطر الثالث: حذف السجل الحالي
السطر الرابع: النقل إلى السجل التالي.
السطور الأخيرة:عند الإنتهاء من السجلات إعرض الرسالة.
في زر التعديل ضع الكود التالي:
بهذا تكون قد عرفت كيفية الإضافة والحذف والتعديل.
الأن إلى أزرار التنقل :
في زر إتجاه اليمين (الإنتقال إلى السجل التالي ) ضع الكود التالي:
On Error Resume Next
Data1.Recordset.MoveNext |
في زر إتجاه اليسار (الإنتقال إلى السجل السابق) ضع الكود التالي:
On Error Resume Next
Data1.Recordset.MoveNext |
الأن نأتي إلى الإستعلام عن سجل
هناك عدة طرق للإستعلام والفرز سوف نأخذها في درس الأستعلام SQL. أما الأن فسوف نأخذ كيفة عرض سجل
مطابق للنص المراد البحث عنه.
في زر البحث ضع الكود التالي:
Select Case Combo1.ListIndex
Case 0
Data1.RecordSource = (' select * from dalel where tell=' + ''' + Text4.Text + ''')
Data1.Refresh
Case 1
Data1.RecordSource = (' select * from dalel where name=' + ''' + Text4.Text + ''')
Data1.Refresh
Case 2
Data1.RecordSource = (' select * from dalel where adr=' + ''' + Text4.Text + ''')
Data1.Refresh
End Select |
مع التركيز على تحديد خيارات Combo1
لاحظ جملة الأستعلام كيفية صياغتها
Data1.RecordSource = (' select * from إسم الجدول where إسم الحقل=' + ''' + Text + ''') |
النجمة تعني كافة الحقول
Text تعني نص البحث.
where هي الشرط أي أن إسم الحقل يشبه Text
طبعاً هناك طريقة أخرى لعرض البيانات و الإضافة ولاكن ليست أفضل من الطريقة السابقة. سوف تعلمها الأن.
طريقة الربط الثانية:
في حدث Load للفورم ضع الكود التالي:
Text1 = Data1.Recordset.Fields!tell
Text2 = Data1.Recordset.Fields!Name
Text3 = Data1.Recordset.Fields!Adr |
والإضافة والتعديل تتم فقط بعكس السطور السابقة:
Data1.Recordset.AddNew
Data1.Recordset.Fields!tell = Text1
Data1.Recordset.Fields!Name = Text2
Data1.Recordset.Fields!Adr = Text3
Data1.Refresh |
وبهذا تكون قد تعلمت الأساسيات في التعامل مع قواعد البيانات.
نرجو الربط بالطريقة الأولى لأنها ستكون محور عملنا في الدروس القادمة.
في الدرس القادم سوف تعرف كيف تعرض السجلات منظمة في جدول . لاتنسى إضافة عدد من الأسماء والأرقام لتساعدنا في العمل.
والله ولي التوفيق