• فيجوال بيسك
  • 25879
  • 20-3-2008
  • عرض السجلات والإضافة والإزالة أولاً إذا لم تقراً الدرس الأول لقواعد البيانات فسيكون درس اليوم صعباً قليلاً وهذه ليست بمشكلة إذا كنت تعرف العمل على أكسس والربط بين برنامجك وقاعدة البيانات في درس اليوم سوف نعرف كيف نعرض السجلات في البرنامج وكيفية إضافة سجلات جديدة وحذفها وطريقة التنقل بين السجلات. والبحث عن سجل إذا درس اليوم هو أهم درس بالنسبة للتعامل مع قواعد البيانات. طبعاً عليك فتح المشروع الذي أخذناه في الدرس الأول لقواعد البيانات .. لهذا ذكرنا أنه عليك أن تتابع دروس قواعد البيانات خطوة بخطوة.. جهز الفورم بالأدوات التالية :

    i

    يمكنك إخفاء Data1 عن طريق خاصية Visible . الأن كيفية عرض السجلات في أدوات النصوص Text: هناك عدة طرق لهذه العملية : أولا: عن طريق الخصائص ل Text وهذه العملية هي الأفضل والأسرع : حدد Text1 وهي المخصصة لعرض رقم الهاتف . ثم إذهب إلى صندوق الخصائص وغيرها كما في الشكل التالي:

    i


    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 ربط قاعدة البيانات بالبرنامج وتحديثها عند التحميل. وعرض رسالة خطأ عند عدم وجودها.
    في زر الأضافة ضع الكود التالي:
    Data1.Recordset.AddNew
    الإضافة لقاعدة البيانات في زر الحذف ضع الكود التالي :
    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, \'خطأ\'

    السطر الأول معروف التصريح عن الخطأ. السطر الثاني: رسالة تأكيد حذف. السطر الثالث: حذف السجل الحالي السطر الرابع: النقل إلى السجل التالي. السطور الأخيرة:عند الإنتهاء من السجلات إعرض الرسالة. في زر التعديل ضع الكود التالي:
    Data1.Refresh
    بهذا تكون قد عرفت كيفية الإضافة والحذف والتعديل. الأن إلى أزرار التنقل : في زر إتجاه اليمين (الإنتقال إلى السجل التالي ) ضع الكود التالي:
    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

    وبهذا تكون قد تعلمت الأساسيات في التعامل مع قواعد البيانات. نرجو الربط بالطريقة الأولى لأنها ستكون محور عملنا في الدروس القادمة. في الدرس القادم سوف تعرف كيف تعرض السجلات منظمة في جدول . لاتنسى إضافة عدد من الأسماء والأرقام لتساعدنا في العمل. والله ولي التوفيق
    عدد المقيّمين 4 وإجمالي التقييمات 14
    12345