الانترنت وقواعد البيانات
|
* القاهرة مكتب الجزيرة أسامة مرسي :
تعلم لغة SQL
الدرس الثاني
4 بقية المحارف الخاصة وإذا كان العمود حسابياً فتأتي القيمة (NELL) أي القيمة الفارغة قبل الأرقام
مثال: نريد ترتيب السجلات تبعاً لاسم العميل ترتيبأً تصاعديا وتلاحظ في الصورة السابقة أن أول سطر هو سطر العميل الذي يحمل اسم naser وذلك لأننا أثناء إدخالنا لبيانات هذا العميل أخذنا مسافة قبل الحرف الأول والمسافة هذه من المحارف الخاصة التي لها أولية قبل الحروف الأبجدية للغة الإنجليزية
لاحظ اختلاف ترتيب السجلات التي تحمل نفس الاسم طبعاً لاسم البلد والآن لتقم بإظهار جميع البيانات في جدول AGENT
هل لاحظت أن العميل الذي يحمل اسم KHALIED يوجد خطأ في اسم بلد هذا العميل فبدلاً من (Saudia Arabia) كتبت (Soudia Arabia) والمطلوب الآن هو تعديل هذا الخطأ وليتم ذلك نستخدم جملة UPDATE وتكتب صيغاتها كما يأتي
نكمل في هذا الدرس موضوع الاستعلامات المشروطة باستخدام جملة where ولقد تحدثنا في الدرس السابق عن المعاملات الشرطية مثل and,or وأخذنا أمثلة عليها والآن سوف نتعلم كيفية دمج هذه المعاملات مع بعضها في جمل وحيدة لكي نحصل على استعلامات أكثر تحديداً
مثال1: نريد عرض بيانات المشتركين الذين يحملون اسم محمد ويعيشون في مصر أو البحرين فإذا قمنا بكتابة الجملة بالترجمة الحرفية للاستعلام فإن الناتج سيكون .
مثال: نريد عرض السجلات مرتبة بناء على اسم العميل ترتيبا تنازليا وجملة ORDER كما ترتب النتائج على مستوى عمود واحد تستطيع أيضاً أن ترتب النتائج على مستوى أكثر من عمود
* شرط يحدد العمود المراد تعديله WHERE *
وهناك بعض الملاحظات يجب أن تنتبه إليها أثناء العمل مع جملة UPDATE
1 يجب أن تكون القيمة الجديدة موافقة لنوع البيانات الذي تم تعريفه بالنسبة للحقل الذي سيتم التعديل فيه.
2 يجب أن تكون القيمة الجديدة لا تزيد على القيمة العظمى التي تم تعريفها للحقل الذي يتم التعديل فيه.
والجملة UPDATE تعدل في البيانات على مستوى السجلات ولكن ما هى الطريقة المستخدمة للتعديل على مستوى الجدول؟
لكي يتم التعديل في بنية الجدول نستخدم جملة ALTER وصيغتها كما يأتي:
*
* اسم العمود *
والآن لنتعلم كيف يتم إلغاء السجلات من الجدول ويتم هذا باستخدام جملة DELET وصيغاتها كالآتي:
*
وقد تم تنفيذ الاستعلام السابق بالطريقة التالية: المطلوب عرض البيانات التي تحمل اسم محمد وتعيش في مصر أو البيانات التي تعيش في دولة البحرين لذلك ظهر البيان الذي يحمل اسم على.
ومن ذلك نفهم أنه لابد من وضع الشروط في أقواس لنفرض على الsql طريقة التنفيذ التي نريدها وتكون طريقة تنفيذ المثال كما يأتي صورة (2) ويجب أن تلاحظ أنه في صيغة or لابد من كتابة اسم العمود في كل شرط والآن سوف نتعلم كيفية ترتيب النتائج باستخدام جملة ORDER وجملة ORDER لها خياران:
1 ASC وهذا الخيار يعنى ترتيب النتائج ترتيباً تصاعدياً
2 DESC وهذا الخيار يعنى ترتيب النتائج ترتيباً تنازلياً وفى حالة عدم كتابة أى من الخيارين السابقين فإن ال SQL سوف تقوم بترتيب النتائج ترتيباً تصاعدياً وإليك ترتيب المعطيات في جملة ORDER من الأدنى إلى الأعلى
1 بعض المحارف الخاصة
2 الأرقام (من 0 إلى 9)
3 الأحرف الأبجدية
مثال: مطلوب ترتيب السجلات طبقاً لعمود الاسم والبلد مرة ترتيباً تصاعدياً والأخرى تنازلياً
مثال: نريد أن نحذف السجل الذي يحمل اسم محمد ومن السعودية
ويجب أن تعلم أن الأمر DELET لا يقوم بإلغاء الجدول نفسه من قاعدة البيانات ولكن تقوم بإلغاء الأسطر من هذا الجدول. أما إذا أردنا أن نلغي هذا الجدول من قاعدة البيانات فإننا نستخدم جملة DROP وتكتب على الصيغة الآتية:
* وهذة الجملة تقوم بحذف الجدول وجميع ما يرتيط بهذا الجدول من فهارس وغيرها
مثال: نريد حذف الجدول المسمى incode drop table incode، ويجب عليك الآن أن تعيد إنشاء الجدول incode
ربط الجداول
والآن جاء وقت الحديث عن موضوع مهم جداً وهو موضوع ربط الجداول وربط الجداول مهم جداً لاننا غالباً ما نحتاج لعرض السجلات في أكثر من جدول والآن تخيل أنك تريد ربط عرض السجلات محتوية على الاسم والبلد ورقم التليفون وكود هذه البلد والمطلوبات الثلاثة الاولى موجودة في الجدول agent والموجود الأخير موجود في الجدول incode والآن يجب علينا ربط الجدولين معاً ولكن يجب علينا أن نلاحظ بعض الأشياء
أولاً: عند ربط الجدولين فإن الSQL ستقوم بتكرار كل سطر من الجدول الأول مع جميع سطور الجدول الثانى
ثانياً: إذا كنا سنقوم بعرض أعمدة لها نفس الاسم في كلا الجدولين فلابد من سبق اسم العمود باسم الجدول الحاوى له.
.....
الرجوع
.....
| |
|
|
توجه جميع المراسلات التحريرية والصحفية الى
chief@al-jazirah.com عناية رئيس التحرير
توجه جميع المراسلات الفنية الى
admin@al-jazirah.com عناية مدير وحدة الانترنت
Copyright 2002, Al-Jazirah Corporation, All rights Reserved
|