نحن مع غزة
قديم 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)
 
أدوات الموضوع
انواع عرض الموضوع

تعليمات المشاركة
لا تستطيع إضافة مواضيع جديدة
لا تستطيع الرد على المواضيع
لا تستطيع إرفاق ملفات
لا تستطيع تعديل مشاركاتك

BB code is متاحة
كود [IMG] متاحة
كود HTML معطلة

الانتقال السريع


الساعة الآن 04:28 AM.