.:رسمه مبدع:.
عزيزي الزائر / عزيزتي الزائرة يرجي التكرم بتسجبل الدخول اذا كنت عضو معنا
او التسجيل ان لم تكن عضو وترغب في الانضمام الي اسرة المنتدي
سنتشرف بتسجيلك
شكرا
ادارة المنتدي
.:رسمه مبدع:.
عزيزي الزائر / عزيزتي الزائرة يرجي التكرم بتسجبل الدخول اذا كنت عضو معنا
او التسجيل ان لم تكن عضو وترغب في الانضمام الي اسرة المنتدي
سنتشرف بتسجيلك
شكرا
ادارة المنتدي
.:رسمه مبدع:.
هل تريد التفاعل مع هذه المساهمة؟ كل ما عليك هو إنشاء حساب جديد ببضع خطوات أو تسجيل الدخول للمتابعة.


.:رسمه مبدع:. طريقك نحو الابداع
 
الرئيسيةالبوابهأحدث الصورالتسجيلدخول
اهلاوسهلا بكم في منتديات برامج نت ارجو من جميع الزوار التسجيل مع تحيات $الادارة$

 

 الاوامر الاساسية التحكم في قاعدة البيانات

اذهب الى الأسفل 
كاتب الموضوعرسالة
PrAmJnEt
مدير عام
مدير عام
PrAmJnEt


ذكر عدد المساهمات : 396
نقاط : 146692
العمر : 65

الاوامر الاساسية التحكم في قاعدة البيانات Empty
مُساهمةموضوع: الاوامر الاساسية التحكم في قاعدة البيانات   الاوامر الاساسية التحكم في قاعدة البيانات Emptyالثلاثاء مايو 05, 2009 2:34 pm

بسم الله الرحمن الرحيم
السلام عليكم ورحمة الله وبركاته


سوف
يكون هذا الدرس كمتابعة لدرس السابق الذي طرحته وقد حرصت على ان اقوم بعمل
هذا الدرس لجعل برنامجك الذي سوف تصنعه اكثر مرونه وخالي من الاخطأ فمثلا
ليس المستخدم مثلك انت صانع البرنامج فالمستخدم قد يضغط زر الحذف وهو غير
محدد سجل او لا توجد سجلات في قاعدة البيانات لتظهر له رسالة الخطأ اما
انت فاعرف بكودات البرنامج لن تقوم بهذه الخطوة لذا سوف نقوم بجعل
البرنامج الذي قمنا بصنعه في الدرس السابق خالي من الاخطأ سوف نبدء من زر
التعديل كل ما يلزمنا هنا التحقق من ان المستخدم قد اختار سجل ليقوم
بتعديله وسوف نستخدم في هذا التحقق الخاصية AbsolutePosition التي تقوم
باعطائنا رقم السجل المختار واذا لم يكن هنالك من سجل محدد سوف تكون
القيمة عندئذ -1 اتصور ان الفكرة قد توضحت الان فكل ما يلزمنا هنا بان
نكتب جملة التحقق بالشكل الاتي


كود PHP:
If Data1.Recordset.AbsolutePosition = -1 Then


مثل
ما ذكرت -1 تعني لا يوجد سجل محدد بالجملة السابقة تقوم بالتحقق واذا كان
يساوي -1 اي لا يوجد سجل محدد لتعديل يقوم البرنامج بتنفيذ حدث معين فلو
اردنا ان نضع كود التعديل كاملا سوف يكون بالشكل الاتي


كود PHP:
Private Sub Command2_Click()
If Data1.Recordset.AbsolutePosition = -1 Then
MsgBox "Your Message"
Else
Data1.Recordset.Edit
Data1.Recordset.Fields!الاسم = Text1.Text
Data1.Recordset.Fields!العمر = Text2.Text
Data1.Recordset.Fields!العنوان = Text3.Text
Data1.Recordset.Update
End If
End Sub


فلو
اردنا شرح الكود السابق : رح يكون الشرح كالاتي في السطر الاول قمنا
بالتحقق هل هنالك سجل محدد لتعديله ام لا فاذا لم يكن هنالك سجل محدد
فيقوم بالاتي وهو عرض رسالة للمستخدم اما اذا لم يتحقق الشرط اي كان هنالك
سجل محدد فيقوم البرنامج بعملية التعديل
وفي هذه الحالة سوف نظمن عدم
حصول خطأ في كود التعديل سببه عدم اختيار سجل وبعد جعل كود التعديل اكثر
صلابة نقوم بالانتقال الى كود الحذف الذي سوف تكون جملة التحقق نفس الجملة
السابقة ليكون الكود بالشكل الاتي


كود PHP:
Private Sub Command3_Click()
If Data1.Recordset.AbsolutePosition = -1 Then
MsgBox "Your Message"
Else
Data1.Recordset.Delete
End If
End Sub


نفس
العميلة التي قكمنا بها في كود التعديل قمنا بالتحقق من اختيار المستخدم
وتنفيذ اوامر على حسب ذلك من هنا ضمنا سير البرنامج بصلابة من حفظ , تعديل
, حذف بيانات فكر قليلا معي الان في كود الانتقال الى السجل الاول والاخير
اذا كانت قاعدة البيانات فارغة واردنا الانتقال الى السجل الاول الذي سوف
يكون غير موجود الن يحصل خطأ يقتل البرنامج بالتاكيد سوف يحصل اذن ما
العمل العمل هو ان تمسك يدي ونقوم انا وانت بكتابة جملة التحقق من عدد
السجلات والتي سوف نستخدم فيها الخاصية RecordCount التي ترجع قيمة رقمية
وهي عدد السجلات في قاعدة البيانات وتبدء الترقيم من الصفر وبهذا سوف يكون
الكود بالشكل الاتي


كود PHP:
Private Sub Command5_Click()
If Data1.Recordset.RecordCount = 0 Then
MsgBox "Your Message"
Else
Data1.Recordset.MoveFirst
End If
End Sub



الموضوع
سهل جدا لقد وضعنا شرط لتحقق من عدد السجلات فاذا كانت صفرا يقوم باظهار
رسالة للمستخدم تقوم بتنبيه اما اذا كانت عدد السجلات اكثر من واحد فسوف
يتنفذ الحدث بكل سلاسة وكذلك الكود سوف يكون بالنسبه لكود الانتقال الى
السجل الاخير ونفس الشرط السابق انتهينا تقريبا ,, لكن هل تفكر بما افكر
به بقى لدينا زرا امر وهي الانتقال الى السجل التالي والانتقال الى السجل
السابق ما الخطأ الذي نتوقعه منهم الخطأ الذي نتوقعه هو ان يقوم البرنامج
بالانتقال من السجل الاخير الى الفراغ اي يخرج من فهرسة وعند محاولة
الانتقال سوف يظهر الخطأ لحل هذه المشكله سوف نقوم بوضع كود بسيط لتحقق من
اذا كان البرنامج واقف على السجل الاخير فاذا كان واقف على السجل الاخير
لا ينفذ حدث الانتقال حتى لا يخرج من الفهرسة واذا كان واقف على السجل
الاول ويحاول الرجوع لا يسمح له بذلك سوف نقوم في هذان الكودان باستخدام
الخواص Eof و Bof وكلتاهما تعطين قيم هي اما True او False والخاصية Eof
هي لتحقق اذا كان البرنامج خارج اطار الفهرسة من بعد مروره على السجل
الاخير والخاصية Bof لتحقق من اذا ما كان البرنامج خارج اطار الفهرسة بعد
مروره على السجل الاول فسوف يكون الكود بكل بساطة كالاتي


كود PHP:
Private Sub Command4_Click()
If Data1.Recordset.EOF = True Then
Your Command
Else
Data1.Recordset.MoveNext
End If
End Sub


هذا
بالنسبة لكود الانتقال الى السجل التالي فكما نلاحظ اذا كان البرنامج خارج
اطار الفهرسة لن يقوم البرنامج بتنفيذ الكود حتى لا يحصل الخطأ واما
بالنسبة لكود الانتقال الى السجل السابق فسوف يكون بنفس الصيغة على اختلاف
بسيط كالاتي


كود PHP:
Private Sub Command6_Click()
If Data1.Recordset.BOF = True Then
Your Command
Else
Data1.Recordset.MovePrevious
End If
End Sub


والشرح نفس الشرح السابق للمزيد من المعلومات حول تفادي الاخطأ ومحاولة قنصها يمكنك مراجعة موضوعي من خلال الرابط الاتي
نهاية الدرس
الرجوع الى أعلى الصفحة اذهب الى الأسفل
https://rsma-m.yoo7.com
 
الاوامر الاساسية التحكم في قاعدة البيانات
الرجوع الى أعلى الصفحة 
صفحة 1 من اصل 1
 مواضيع مماثلة
-
» الاوامر الاساسية التحكم في قاعدة البيانات ( الجزء الاول
» التحكم فى قواعد البيانات بواسطه الفيجوال بسيك
» الإستعلام من قاعدة البيانات
» كيفية تثبيت مسار قاعدة البيانات
» انشاء قاعدة بيانات 2

صلاحيات هذا المنتدى:لاتستطيع الرد على المواضيع في هذا المنتدى
.:رسمه مبدع:. :: ¨°o.O (لغات البرمجه) O.o°¨ :: .:الفجول باسيك:.-
انتقل الى: