الإهداءات |
|
|
أدوات الموضوع | انواع عرض الموضوع |
05-22-2005, 08:51 PM | #1 | |
|
Dao تقنيةasp
ماهو محرك قواعد البيانات
هو واجهة استخدام تمكنك من الوصول إلى المعطيات بدون النظر عن نوعية المعطيات المستخدمة مع فيجوال بيسك ؟ DAO طريقة عمل DAO اولا قبل معرفة الطريقة يجب ربط مكتبة بالفيجوال بيسك كالتالي اختر من القائمة Project - References واختر العنصر المطلوب كالتالي وبعد ربط المكتبة يجب الان ربط قاعدة البيانات المطلوبة بالشكل التالي Dim dbOpenNewDatabase1 As Database Dim rsDetails As Recordset dbPathName = App.Path & "\Absoft.MDB" 'Open Database تم فتح الإتصال مع قاعدة البيانات Absoft.MDB Set dbOpenNewDatabase1 = DBEngine.Workspaces(0).OpenDatabase (dbPathName) Set rsDetails = dbOpenNewDatabase1.OpenRecordset("D etails", dbOpenTable) rsDetails.Index = "Custno" وبعد عملية الربط هذه بإمكانك الاشارة إلى الجداول المطلوبة بإلاشارة فقط إلى rsDetails فمثلا سوف نقوم بعمل البرنامج التالي ItemNo وبهذا المثال نريد تغير قيمة الحقل قم بوضع زر امر في نافذة البرنامج وضع بداخله هذا الكود ' rsdetails هنا نشير إلى الجدول 'وتحريك المؤشر إلى بداية الجدول rsDetails.MoveFirst 'لتنفيذ عملية التكرار في الحقول do هنا نستخدم امر Do 'اولا Edit يجب معرفة عند القيام بعملية التغير على اي حقل معين يجب استخدام المنهج rsDetails.Edit 'هنا نقوم بالإشارة الفعلية للحقل مع اضافة 11 rsDetails.Fields!ItemNo = rsDetails.Fields!ItemNo + 11 'Update ولاحظ ايضايجب استخدام المنهج rsDetails.Update 'وهذا ايضا ظروري لكي نقوم بعملية تكرار من حقل إلى الحقل الذي يليه rsDetails.MoveNext 'هنا نقوم بإغلاق عملية الدوران مع وضع شرط وهو نهاية الجدول المطلوب Loop Until rsDetails.EOF التحميل وبهذه الطريقة بإمكانك الاشارة إلى اي حقل تريد العمل الان نريد معرفة كيفة عملية البحث عن حقل معين بإلاشارة إليه بالرقم مثلا وهذا هو الكود المطلوب 'فائدة البرنامج : يختص في تعليم dao 'قواعد بيانات ''''''''''''''''''''''''''''''''''' '''''''''''''''''' 'هنا نقوم بتعريف كائنات 'هذا للقاعدة وبذلك نتمكن من استدعاء القاعدة بهذا الاسم ' db Dim db As Database 'وهذا ايضا للسجلات او الصفوف داخل الجدول ' rs Dim rs As Recordset Private Sub comfind_Click() Dim varauid As Variant Dim strbkmark As String 'هنا نقوم بإدخال رقم العميل varauid = InputBox("ادخل رقم العميل", "بحث العملاء", 13) 'لو رقم العميل المدخل فارغ اذن اخرج من عملية البحث If varauid = "" Then Exit Sub End If 'هنا نستخدم طريقة with rs بدل من ان نستخدمها اكثر من مره With rs 'هنا نقوم بأخذ مكان اول سجل حالي 'وذلك يفيدنا عندما تفشل عملية البحث strbkmark = .Bookmark 'هنا نقوم بعملية البحث بطريقة find first 'وهو يقوم الان بالبحث من اول سجل موجود في القاعدة .FindFirst "auid = " & varauid 'هنا نقوم بإختار هذا المتغير الذي يفيدنا عند فشل عملية البحث 'فإذا فشلت عملية البحث If .NoMatch = True Then 'رجعنا على السجل قبل عملية البحث .Bookmark = strbkmark 'إظهار رسالة بحث MsgBox "لايوجد السجل المطلوب " 'غير ذلك Else 'ضع في خانة النص رقم العميل من الجدول txtid.Text = rs!auid 'ضع في خانة النص اسم العميل txtname.Text = rs!Name 'ضع في خانة النص تاريخ ولادة العميل txtdate.Text = rs!dob End If End With End Sub 'للإستفسار fbi_pal3@hotmail.com Private Sub Form_Load() 'إنشاء متغيرات مطلوبة عادية Dim strdbname As String Dim strrsname As String 'هنا نقوم بإدخال اسم قاعدة البيانات المطلوبة 'واسم السجلات ايضا strdbname = App.Path & "\books6.mdb" strrsname = "Authors" 'وهنا نقوم بوضع قاعدة البيانات كعنصر يمكننا من الاشارة إلى القاعدة في اي وقت Set db = DBEngine.OpenDatabase(strdbname) 'وهذا ايضا يمكننا من الاشارة إلى الحقول في اي وقت نريدها Set rs = db.OpenRecordset(strrsname, dbOpenDynaset) End Sub التحميل |
|
اقتباس المشاركة |
06-02-2005, 04:37 PM | #2 | |
|
مشاركة: Dao تقنيةasp
يسلمو ايديك قناص الموت
|
|
اقتباس المشاركة |
06-26-2005, 09:39 PM | #3 | |
|
مشاركة: Dao تقنيةasp
مشكور محمود على مرورك على هالمشاركه
|
|
اقتباس المشاركة |
الذين يشاهدون محتوى الموضوع الآن : 1 ( الأعضاء 0 والزوار 1) | |
أدوات الموضوع | |
انواع عرض الموضوع | |
|
|