السلام عليكم
بارك الله فيك
درس ممتاز
استمر
السلام عليكم
بارك الله فيك
درس ممتاز
استمر
اخوكم في الله جمال محمد الامين الناصري
لـقد سمعـت اذا نديـت حـيا .:. ولكن لا حيت لمن تنادى
وإذ نـار نــفـخــت بـهــا اضــــأت .:. ولكن جل نفخك فى ارمادى
السلام عليكم
بارك الله فيك اخي سر العرب
اتمني تتابع معانا الدورة
الي النهاية
لكل شيئ إذا ماتم نقصان فلا يغتر بطيب العيش إنسان
ربط قاعدة البيانات بالكود الجزء الثالث
نتعلم كيفية التنقل بين السجلات و كيفية الحفظ و التعديل و الاضافة و الحذف
التنقل بين السجلات :
لن تحتاج للتنقل بين السجلات الا لـ:
السجل التالي
السجل السابق
السجل الأول
السجل الأخير
!+عريض!السجل التالي!-عريض!
ولكي تنتقل للسجل التالي سوف تحتاج لكتابة الأمر التالي في الزر المطلوب و هو في مثالنا cmd6
كود:Private Sub cmd6_Click() t.MoveNext Call showdata End Subلاحظ أننا استخدمنا اسم الجدول المستعار t ، ثم بعد ذلك استدعينا الاجراء showdata الذي عملناه
في الجزء السابق لكي يقوم بعرض البيانات في السجل التالي وهذه الطريقة تنطبق على جميع انواع التنقل
القادمة
!+عريض!السجل السابق!-عريض!
وكل ما تحتاج كتابته هذا الكود بنفس طريقة الكود السابق
( لا تنسى وضع الكود في المكان المناسب و هو هنا cmd7)كود:Private Sub cmd7_Click() t.MovePrevious Call showdata End Subعريض+!السجل الأول!-هريض!
للإنتقال للسجل الأول اكتب الكود التالي في زر الامر cmd8
كود:Private Sub cmd8_Click() t.MoveFirst Call showdata End Sub!+عريض!السجل الأخير!-عريض!
للانتقال للسجل الاخير اكتب الكود التالي في زر الامر cmd5 :
كود:Private Sub cmd5_Click() t.MoveLast Call showdata End Subهذه كل اوامر التنقل التي تحتاجها ، لكن لم ننتهي بعد فستواجهك مشكلة ،
فمثلا عندما تريد أن تنتقل للسجل التالي و انت في السجل الاخير طبعا لا يوجد سجل تالي
لذلك سيتوقف البرنامج ، و نفس الشيء عند الانتقال للسجل السابق و انت في السجل الاول
فلا يوجد سجل سابق فسيتوقف البرنامج ، لذلك سنقوم بإضافة جملة شرطية للتأكد اذا كان السجل
الأخير او الاول حسب الحاله ثم نقوم بوضع امر Movefirst او movelast حيث ان هذين
الامرين لا يتأثران سواء كان هناك سجل او لا و طريقة استخدامهم هكذا :
!+عريض!ملاحظة!-عريض!
!+عريض!ملاحظة!-عريض!
نستخدم الدالة EOF لمعرفة اخر سجل في الجدول ،
و نستخدم الدالة BOF لمعرفة اول سجل في الجدول
سنضع الجملة الشرطية التالية في زر الانتقال للتالي فإذا كان هذا اخر سجل اذا انتقل للسجل التالي
كود:If t.EOF Then t.MoveLast
و كذلك في زر الانتقال للسابق نضع شرط اذا كان هذا اول سجل اذا انتقل للسجل الاول
كود:If t.BOF Then t.MoveFirstلذلك سنضيف الجملتين السابقتين لكود الانتقال للتالي و الانتقال للسابق فييصبح كود الانتقال للتالي هكذا :
كود:Private Sub cmd6_Click() t.MoveNext If t.EOF Then t.MoveLast Call showdata End Subوكود الانتقال للسابق هكذا :
!+عريض!عمليات السجلات!-عريض!كود:Private Sub cmd7_Click() t.MovePrevious If t.BOF Then t.MoveFirst Call showdata End Sub
الان سنتعلم عمليات السجلات منحذف و اضافة و تعديل
!+عريض!أضافة سجل!-عريض!
الامر التالي يقوم بإضافة سجل و نضيف عليه اوامر لتمسح ما في مربعات النص لتهيئتها للإضافة:
كود:Private Sub cmd1_Click() t.AddNew 'اضافة سجل جديد 'الخطوات التالية لكي نقوم بمسح ما في مربعات النص لتهيئتها للإضافة و هي خطوة لتعطي طابع الاحتراف فقط Text1.Text = "" Text2.Text = "" Text3.Text = "" End Sub!+عريض!حفظ سجل:!-عريض!
لتحفظ سجل يجب عليك أن تقوم بوضع القيم التي في مربعات النص في الحقول التي توازيها
في الجدول ، و لاحظ أنه سوف يعطيك رسالة خطأ عندما تقوم بالحفظ دون ان تقوم باختيار تعديل
سجل او اضافة سجل لذلك يفترض بك ان تجعل زر الحفظ في حالة التمكين فقط عندما يضيف المستخدم سجلا او يختار تعديل سجل، كذلك يجب عليك استخدام الدالة
Val عند حفظ الحقول الرقمية لتجنب المشاكل عندما يتركه المستخد فارغا ،
و ايضا يجب عليك ان تقوم بتحديث الجدول بعد عملية الحفظ لتكمل العملية بسلام
و هذا هو الكود المطلوب:كود:Private Sub cmd2_Click()'نقوم في الخطوات التالية بنقل ما في مربعات النص الى الحقول التي توازيها في قاعدة البيانات t!Name = Text1.Text t!num = Val(Text2.Text) ' لا حظ اننا استخدمنا هذه الدالة لكي يتم قبول الحقل في حالة كونه فارغ لان هذا حقل رقمي val t!price = Val(Text3.Text) t.Update End Sub
!+عريض!تعديل سجل :!-عريض!
فقط اخبر البرنامج انك تريد التعديل بهذا الكود
كود:Private Sub cmd3_Click() t.Edit 'تسمح هذه الخاصية بتعديل البيانات في الحقل End Sub
!+عريض!حذف سجل :!-عريض!
عملية حذف السجل سهلة ، و لكن ماذا بعد ان تحذف السجل ؟ بالطبع يجب ان تعرض السجل التالي ، و ايضا يجب ان تراعي المشاكل التي تواجهك عند انتقالك للسجل التالي فقد لا يكون هناك سجل تالي وقد شرحنا كيف تتفادى هذه المشكلة في هذا الدرس ، و هذا هو الكود اللازم :النتيجة هنـــــــــــــــــاكود:Private Sub cmd4_Click() t.Delete 'لحذف سجل t.MoveNext 'للانتقال للسجل التالي بعد الحذف If t.EOF Then t.MoveLast ' يحل هذا الاجراء مشكلة عدم وجود سجل تالي End Sub
نلتقي غدا انشاء الله
في درس جديد
لكل شيئ إذا ماتم نقصان فلا يغتر بطيب العيش إنسان
ما شاء الله
بحق درس من اروع مايكون
استمر اخي
وجزاك الله كل الخير يا رب
بالتوفيق
شبكة قانوني الاردن
نسعى معا للرقي بالمهنة القانونية في الاردن
www.lawjo.net
-----------------------------------------
e_amawi (at) yahoo.com
السلام عليكم
ماشاء الله
درس رائع
استمر
في انتظار المزيد
اخوكم في الله جمال محمد الامين الناصري
لـقد سمعـت اذا نديـت حـيا .:. ولكن لا حيت لمن تنادى
وإذ نـار نــفـخــت بـهــا اضــــأت .:. ولكن جل نفخك فى ارمادى
ماشاء الله درس ممتاز
بارك الله فيك
بارك الله فيك على هذا الردالمشاركة الأصلية كتبت بواسطة amawi
راح استمر انشاء الله
لكل شيئ إذا ماتم نقصان فلا يغتر بطيب العيش إنسان
المشاركة الأصلية كتبت بواسطة سر العرب
هلا سر العرب
انت بس تابع انا راح استمر في الدورة
انشاء الله
لكل شيئ إذا ماتم نقصان فلا يغتر بطيب العيش إنسان
المشاركة الأصلية كتبت بواسطة حبيبة الشيخ
هلا حبيبة انشوفوك في السنة مرة
نورتي المنتدي
مشكورة على المرور
لكل شيئ إذا ماتم نقصان فلا يغتر بطيب العيش إنسان
لغة الإستفسارات SQL
بعد ان اخذنا قاهعدة البيانات بالتفصيل هناك شيء اخر تعمدت تجنبه وذلك
لتجنب التعقيد في الدروس انه لغة الاستفسار SQL وسوف نشرحها بالتفصيل
انشاء الله ابتداء من هذا الدرس
لكن ما هي فائدة هذه اللغة؟ لنفرض ان لديك موظفين بالمئات و تريد ان تحدد جنسية معينه منهم
و تحصرهم لن تستطيع فعل ذلك الا بلغة الاستعلام حيث يقوم بجمع الحقول التي تساوي الشرط
الذي شرطته و هو جنسيتهم ، سنأخذ شرحا مفصلا في هذا الدرس عن الاساسيات و تطبيقات عليها.
ولا مافائدة هذه اللغة ؟ كما ذكرنا في المقدمة ان فائدتها في حصر القيم التي تطابق القيم المعطاه
من قبل المستخدم و تتميز بالسهولة و الدقة و السرعة ايضا كما يمكنك التحكم بها بصوره كبيره
ويمكنك ادخال اكثر من شرط في الاستعلام الواحد، لنفرض ان لدينا جدول اسمه Tb وفيه حقلين
باسم name و number و تحتوي هذه الحقول على قيم مدخلة كما في الجدول التالي:
كود:و نريد ان نستخرج الاسماء التي ارقامها 444 فسنحتاج الى جملة استعلام بسيطة على الشكل التالي :كود:SQL = "select name from Tb where number = 444"في الجملة السابقة امرنا البرنامج ان يقوم بتحديد قيم الحقل nameمن الجدول Tb عندما تكون قيم الحقل number تساوي 444 ، و وضعنا ذلك في متغير اسمه SQL دعونا نلقي نظره على طرق الاستعلام اذا اردت أن تستعلم عن جميع الحقول في جدول بدون شرط استخدم النجمة لتعبر عن جميع الحقول و لا تضع شرطا مثل هذا الاستعلامSQL = "select * from Tb "اذا ارت ان تستفسر عن قيم حقلين بدون شرط اكتب اسم الحقلين بينهما فاصلة و لا تضع شرطا كالتالي:SQL = "select name,number from Tb "اذا اردت ان تستفسر عن حقل معين بشرط ما استخدم الصيغة التالية:SQL = "select name from Tb where number = 444 "!+أحمر!يمكنك استخدام صيغ المقارنة > او < او <= او >= او <> بدلا من = !-أحمر! عندما تريد الاستعلام و استخدام اكثر من شرط ضع بين الشرطين عبارة And او OR حسب حاجتك كالتالي:SQL = "select name from Tb where number = 444 or number = 555 "
نلتقي غدا في درس جديد
انشاء الله
لكل شيئ إذا ماتم نقصان فلا يغتر بطيب العيش إنسان
رائع درس رائع بحق
بسيط وسلس ومفهوم من كل النواحي
لكن لي سؤال
هل هذه الجمل فقط من قواعد بيانات SQL ام مع اي قاعدة كانت
وشكرا جزيلا
بالتوفيق
شبكة قانوني الاردن
نسعى معا للرقي بالمهنة القانونية في الاردن
www.lawjo.net
-----------------------------------------
e_amawi (at) yahoo.com
بارك الله فيك
اخوكم في الله جمال محمد الامين الناصري
لـقد سمعـت اذا نديـت حـيا .:. ولكن لا حيت لمن تنادى
وإذ نـار نــفـخــت بـهــا اضــــأت .:. ولكن جل نفخك فى ارمادى
السلام عليكم
شكرا على السوال اخي amawiهل هذه الجمل فقط من قواعد بيانات SQL ام مع اي قاعدة كانت
ان هذه الجمل اذا كانت بهذا الشكل مثلا
تكون خاصة بقاعدة البينات SQLكود:SQL = "select name,number from Tb "
لكن يمكنك تغيير الاسم SQL الي اسم قاعدة البيانات الاخري
يشر ان تراعي شورطها من حيث علامات التنصنص او الاقتباس ...الخ
بارك الله فيك
لكل شيئ إذا ماتم نقصان فلا يغتر بطيب العيش إنسان
المشاركة الأصلية كتبت بواسطة سر العربالله يخليك يا اخي سر العرب
لكل شيئ إذا ماتم نقصان فلا يغتر بطيب العيش إنسان
مــشكــور
مـــشكـــور
مــــشكــــور
مـــــشكـــــور
مــــــشكــــــور
مـــــــشكـــــــور
مــــــــشكــــــــور
مـــــــــشكـــــــــور
مــــــــــشكــــــــــور
مـــــــــــشكـــــــــــور
مــــــــــــشكــــــــــــور
مـــــــــــــشكـــــــــــــور
مــــــــــــــشكــــــــــــــور
مـــــــــــــــشكـــــــــــــــور
مــــــــــــــــشكــــــــــــــــور
مـــــــــــــــــشكـــــــــــــــــور
مـــــــــــــــــشكـــــــــــــــــور
مــــــــــــــــشكــــــــــــــــور
مـــــــــــــــشكـــــــــــــــور
مــــــــــــــشكــــــــــــــور
مـــــــــــــشكـــــــــــــور
مــــــــــــشكــــــــــــور
مـــــــــــشكـــــــــــور
مــــــــــشكــــــــــور
مـــــــــشكـــــــــور
مــــــــشكــــــــور
مـــــــشكـــــــور
مــــــشكــــــور
مـــــشكـــــور
مــــشكــــور
مـــشكـــور
مــشكــور
مـشكـور
...
قد تنسى من شاركك الضحك لكنك لن تنسى من شاركك البكاء私の生命は日本であるسبحان الله وبحمده سبحان الله العظيم