منتدى برامج نت | برامج نت | دليل المواقع | العاب فلاش | برامج | عيادة الطب | Free software
العاب افلام موقع منتديات

المساعد الشخصي الرقمي

مشاهدة النسخة كاملة : تعلم فقط مع الفرعون عرض السجلات والإضافة والإزالة


الفرعون المحترف
12-07-2006, 11:14 AM
في درس اليوم سوف نعرف كيف نعرض السجلات في البرنامج وكيفية إضافة سجلات جديدة وحذفها وطريقة التنقل بين السجلات. والبحث عن سجل

إذا درس اليوم هو أهم درس بالنسبة للتعامل مع قواعد البيانات.



طبعاً عليك فتح المشروع الذي أخذناه في الدرس الأول لقواعد البيانات .. لهذا ذكرنا أنه عليك أن تتابع دروس قواعد البيانات خطوة بخطوة..



جهز الفورم بالأدوات التالية :
http://www.bwady.com/im_vb/frmdalel.JPG
يمكنك إخفاء Data1 عن طريق خاصية Visible .



الأن كيفية عرض السجلات في أدوات النصوص Text:

هناك عدة طرق لهذه العملية :

أولا: عن طريق الخصائص ل Text وهذه العملية هي الأفضل والأسرع :

حدد Text1 وهي المخصصة لعرض رقم الهاتف . ثم إذهب إلى صندوق الخصائص وغيرها كما في الشكل التالي:
http://www.bwady.com/im_vb/prodata.JPG
- أنقر فوق الخاصية 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


طبعاً هناك طريقة أخرى لعرض البيانات و الإضافة ولاكن ليست أفضل من الطريقة السابقة. سوف تعلمها الأن.

طريقة الربط الثانية:
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

وبهذا تكون قد تعلمت الأساسيات في التعامل مع قواعد البيانات.

نرجو الربط بالطريقة الأولى لأنها ستكون محور عملنا في الدروس القادمة.

في الدرس القادم سوف تعرف كيف تعرض السجلات منظمة في جدول . لاتنسى إضافة عدد من الأسماء والأرقام لتساعدنا في العمل.

والله ولي التوفيق

alae001
12-07-2006, 11:35 AM
دائما متألق كعادتك أخي أحمد وموضوع اخر جميل تشكر عليه جزيل الشكر.

zakimoulayabdellah
12-07-2006, 11:37 AM
goood job friend

الفرعون المحترف
12-07-2006, 11:43 AM
مشكورين جزاكم الله الف
خير على الردود الجميله

Ahmed_ghanam
12-07-2006, 08:16 PM
مشكور اخى احمد على الدرس الرائع

hamata00
12-07-2006, 08:53 PM
بارك الله فيك اخي احمد
هذا الرد يكون
1.Hamata00
2.Ahmed ksnv

veto_44
12-07-2006, 09:06 PM
بارك الله فيك مشرفنا المبدع احمد لك جزيل الشكر على
مجهودك الكبير ما شاء الله عليك لا تترك مجال للعتــب
لك خالص التقدير والاحترام .

الفرعون المحترف
12-07-2006, 09:38 PM
اهلا بيك مشرفنا الكبير
جزاك الله الف خير

(li) صقر (li)
12-08-2006, 04:21 AM
دائماً مميز أخي , أحمد عصام
لك مني جزيل الشكر والتقدير
وننتظر جديدك , ولو في إمكانية جعل الشرح مصور كله , أو فيديو , يكون أسهل كثييييييييييييير
عالعموم شكراً جزيلاً لك

حـاكم
12-08-2006, 10:19 AM
بارك الله فيك ...

هل يمكن أن تضع رابط الدرس الأول ... وهل هذه الطريقة للفجوال بيسك 6 أو فيجوال بيسك دوت نت (2003 أو 2005 ) ...

الفرعون المحترف
12-08-2006, 10:47 AM
السلام عليكم
شكرا لكم على ردودكم الجميله
شكرا لكم

Euro
12-12-2006, 10:03 PM
حاجة حلوة قوي شكرا

black_tiger_2006
12-12-2006, 10:56 PM
شكرا اخى الفرعون المحترف ولكن لماذا تستخدم تقنية DAO فى الربط باستخدام اداه Data Control فهذه التقنيه لا تصلح الا مع Microsoft Access97 ولا تصلح لانشاء برامج كبيرة لابد من التركيز بشده على تقنيه Activex Data Opject من البدايه لانها الافضل وتتعامل مع جميع انواع برامج قواعد البيانات سواء Access او SQL او Oricel وهى طريقه المحترفيين اعتقد انك لو بدات بالاصعب افضل ان تبدا بالاسهل وشكرا على مجهودك اخى العزيز