الاقتصادية المعقب الالكتروني نادي السيارات الرياضية كتاب واقلام الجزيرة
Sunday 21st March,2004 العدد : 61

الأحد 30 ,محرم 1425

الانترنت وقواعد البيانات
تعلم لغة SQL الدرس الثاني
* القاهرة مكتب الجزيرة أسامة مرسي :
لقد تحدثنا في الدرس السابق عن المعاملات الشرطية مثل and,or وأخذنا أمثلة عليها .
والآن سوف نتعلم كيفية دمج هذه المعاملات مع بعضها في جمل موحدة لكي نحصل على استعلامات أكثر تحديداً.
مثال 1: نريد عرض بيانات المشتركين الذين يحملون اسم محمد ويعيشون في مصر أو البحرين فإذا قمنا بكتابة الجملة بالترجمة الحرفية للاستعلام فإن الناتج سيكون كما في الصورة.
نكمل في هذا الدرس موضوع الاستعلامات المشروطة باستخدام جملة where ولقد تم تنفيذ الاستعلام السابق بالطريقة التالية:
المطلوب عرض البيانات التي تحمل اسم محمد وتعيش في مصر أو البيانات التي تعيش في دولة البحرين لذلك ظهر البيان الذي يحمل اسم علي. ومن ذلك نفهم أنه لابد من وضع الشروط في أقواس لنفرض على الsql طريقة التنفيذ التي نريدها. وتكون طريقة تنفيذ المثال كما يأتي.
ويجب أن تلاحظ أنه في صيغةor لا بد من كتابة اسم العمود في كل شرط. والآن سوف نتعلم كيفية ترتيب النتائج باستخدام جملة ORDER، وجملةORDER لها خياران:
1 ASC وهذا الخيار يعني ترتيب النتائج ترتيباً تصاعدياً.
2 DESC وهذا الخيار يعني ترتيب النتائج ترتيباً تنازلياً. وفي حالة عدم كتابة أي من الخيارين السابقين فإن ال SQL سوف تقوم بترتيب النتائج ترتيباً تصاعدياً. وإليك ترتيب المعطيات في جملة ORDER من الأدنى إلى الأعلى:
1 بعض المحارف الخاصة.
2 الأرقام )من 0 إلى 9).
3 الأحرف الأبجدية.
4 بقية المحارف الخاصة وإذا كان العمود حسابياً فتأتي القيمة (NELL) أي القيمة الفارغة قبل الأرقام.
مثال: نريد ترتيب السجلات تبعاً لاسم العميل ترتيباً تصاعدياً:
وتلاحظ في الصورة السابقة أن أول سطر هو سطر العميل الذي يحمل اسم naser وذلك لأننا في أثناء إدخالنا لبيانات هذا العميل أخذنا مسافة قبل الحرف الأول، والمسافة هذه من المحارف الخاصة التي لها أولية قبل الحروف الأبجدية للغة الإنجليزية.
مثال: نريد عرض السجلات مرتبة بناء على اسم العميل ترتيباً تنازلياً .
وجملة ORDER كما ترتب النتائج على مستوى عمود واحد تستطيع أيضاً أن ترتب النتائج على مستوى أكثر من عمود.
مثال: مطلوب ترتيب السجلات طبقاً لعمود الاسم والبلد، مرة ترتيباً تصاعدياً، والأخرى تنازلياً.
انظر الصورتين التاليتين:
لاحظ اختلاف ترتيب السجلات التي تحمل نفس الاسم طبعاً لاسم البلد. والآن لتقم بإظهار جميع البيانات في جدول AGENT .
هل لاحظت أن العميل الذي يحمل اسم KHALIED يوجد خطأ في اسم بلد هذا العميل، فبدلاً من Saudia Arabia) كتبت(Soudia Arabia) والمطلوب الآن هو تعديل هذا الخطأ.
وليتم ذلك نستخدم جملة UPDATE وتكتب صيغها كما يأتي:
)القيمة الجديدة=اسم العمود) SET )إسم الجدول) UPDATE
)شرط يحدد العمود المراد تعديله) WHERE
مثال:
وهناك بعض الملاحظات يجب أن تنتبه إليها أثناء العمل مع جملة UPDATE
1 يجب أن تكون القيمة الجديدة موافقة لنوع البيانات التي تم تعريفها بالنسبة للحقل الذي سيتم التعديل فيه.
2 يجب أن تكون القيمة الجديدة لا تزيد عن القيمة العظمى التي تم تعريفها للحقل الذي يتم التعديل فيه. والجملة UPDATE تعدل في البيانات على مستوى السجلات ولكن ما هي الطريقة المستخدمة للتعديل على مستوى الجدول؟
لكي يتم التعديل في بنية الجدول نستخدم جملة ALTER وصيغها كما يأتي: ADD )اسم الجدول) ALERT TABLE^
)نوع البيانات) )اسم العمود) والآن لنتعلم كيف يتم إلغاء السجلات من الجدول ويتم هذا باستخدام جملة DELET وصيغها كالآتي:
)شرط) WHERE )اسم الجدول) DELETE FROM
مثال: نريد أن نحذف السجل الذي يحمل اسم محمد ومن السعودية انظر الصورة
ويجب أن تعلم أن الأمر DELET لا يقوم بإلغاء الجدول نفسه من قاعدة الباينات ولكن تقوم بإلغاء الأسطر من هذا الجدول.
أما إذا أردنا أن نلغي هذا الجدول من قاعدة البيانات فإننا نستخدم جملة DROP وتكتب على الصيغة الآتية:
)اسم الجدول) DROP TABLE وهذه الجملة تقوم بحذف الجدول وجميع ما يرتيط بهذا الجدول من فهارس وغيرها.
مثال: نريد حذف الجدول المسمى incode;drop table incode
ويجب عليك الآن أن تعيد إنشاء الجدول incode
ربط الجداول
والآن جاء وقت الحديث عن موضوع مهم جداً وهو موضوع ربط الجداول وربط الجداول مهم جداً لأننا غالباً ما نحتاج لعرض السجلات في أكثر من جدول. لنتخيل أنك تريد ربط عرض السجلات محتوية على الاسم والبلد ورقم التليفون وكود هذه البلد والمطلوبات الثلاثة الأولى موجودة في الجدول agent والموجود الأخير موجود في الجدول incode . والآن يجب علينا ربط الجدولين معا ولكن يجب علينا أولاً أن نلاحظ بعض الأشياء:
أولاً: عند ربط الجدولين فإن ال SQL ستقوم بتكرار كل سطر من الجدول الأول مع جميع سطور الجدول الثاني.
ثانياً: إذا كنا سنقوم بعرض أعمدة لها نفس الاسم في كلا الجدولين فلابد من سبق اسم العمود باسم الجدول الذي يحويه.
قواعد البيانات مع مايكروسوفت أكسيس
يعد برنامج مايكروسوفت أكسيس 2002 أو اكس بي MS Access XP أحد برامج الحزمة المكتبية )MS OFFICE) وهو برنامج خاص بالتعامل مع قواعد البيانات، وقواعد البيانات بكل بساطة عبارة عن طرق سهلة أو هياكل خاصة تسهل تنظيم وترتيب البيانات والمعلومات الخاصة بموضوعات متعددة وتكون تلك البيانات مرتبطة معاً في فهرس يسهل عملية سردها وانتقاء المطلوب منها. وبالتالي الحصول على تقارير منها.
خطوات برمجة قواعد البيانات
لبرمجة أي قاعدة بيانات لا بد من تقسيم العمل إلى خطوات منظمة كما يلي:
إدخال البيانات. معالجة البيانات التي تم إدخالها.
الحصول على الاستعلامات )إحصائيات) والتقارير منها.
طباعة المخرجات.
بدء تشغيل برنامج ACCESS
1 بعد فتح البرنامج من قائمة ابدأ (START).
2 يعرض البرنامج الشاشة الافتتاحية كما هو موضح )صورة رقم 1)
وكما هو واضح من الصورة فإن الشاشة الافتتاحية مكونة من الآتي:
في يمين الشاشة توجد قائمة )ملف جديد) وهي تحتوي على قوائم فرعية هي:
فتح ملف.. وهو يحتوي تحته على أسماء آخر الملفات التي تم فتحها مؤخراً.
جديد من ملف.. وهو يحتوي على أربعة اختيارات هي:
1 قاعدة بيانات فارغة. 2 صفحة وصول إلى البيانات.
3 المشروع) بيانات موجودة). 4 المشروع ) بيانات جديدة).
جديد من ملف موجود وهو واضح من اسمه
جديد من قالب. وهذا أيضاً واضح من اسمه.
ولنبدأ أولى الخطوات مع البرنامج نقوم بالآتي:
إنشاء قاعدة بيانات جديدة
لتبدأ العمل لا بد لك من فتح ملف جديد ومن خلال سلسلة الدروس هذه فإننا سوف نستخدم مثالاً لقاعدة بيانات وليكن اسمه )مجلة العالم الرقمي).
من قائمة ملف جديد اختر أمر )قاعدة بيانات فارغة) فتظهر نافذة كالموضحة في الصورة رقم )2).
من صندوق اسم الملف اكتب )مجلة العالم الرقمي).ثم اضغط إنشاء فيقوم أكسيس بإنشاء قاعدة بيانات فارغة بالاسم الجديد. )صورة رقم 3.
التعرف على شاشة قاعدة البيانات
عند النظر إلى شاشة قاعدة البيانات نجد الآتي:
اسم قاعدة البيانات الذي سبق حفظها به يظهر مكتوباً في شريط العنوان.
تحتوى النافذة )نافذة قاعدة بيانات مجلة العالم الرقمي) على الكائنات الآتية:
* الجداول. * الاستعلامات. * النماذج.
* التقارير. * صفحات. * وحدات ماكرو.
* وحدات نمطية. * المفضلة.
وسوف نتناول في الأسبوع القادم كل منها بمزيد من التفصيل.

..... الرجوع .....

العنكبوتية
دنيا الاتصالات
وادي السليكون
الالعاب
الركن التقني
الامن الرقمي
تعليم نت
بورة ساخنة
دليل البرامج
اقتصاد الكتروني
نساء كوم
الابداع العلمي
حوار العدد
دكتور .كوم
الحكومة الالكترونية
قواعد البيانات
معارض
الصفحة الرئيسة

ارشيف الاعداد الاسبوعية

ابحث في هذا العدد

للاشتراك في القائمة البريدية

للمراسلة


توجه جميع المراسلات التحريرية والصحفية الى chief@al-jazirah.com عناية رئيس التحرير
توجه جميع المراسلات الفنية الى admin@al-jazirah.com عناية مدير وحدة الانترنت

Copyright 2002, Al-Jazirah Corporation, All rights Reserved