بتـــــاريخ : 3/1/2011 10:38:54 PM
الفــــــــئة
  • الحـــــــــــاسب
  • التعليقات المشاهدات التقييمات
    0 1096 0


    [مقالة قصيرة] بدأ مجموعة من الدروس - أرجوا التثبيت -

    الناقل : elmasry | العمر :42 | الكاتب الأصلى : Guest_cold0zero | المصدر : www.arabteam2000-forum.com

    كلمات مفتاحية  :
    مقالة قصيرة مجموعة الدروس ISO

    لمحـــة تاريخية

    ان SQL لغة تعامل مع قواعد البيانات وقد تم زرعها نظريا في جميع أنظمة ادارة قواعد البيانات العلائقية (DBMS)
    المصممة لعدة مستخدمين وقد تم هذا الأمر نتيجة اعتماد هذه اللغة من هيئة المواصفات الوطنية الأمريكية (ANSI)
    و من قبل هيئة المواصفات الدولية (ISO) كلغة استفسارات قياسية لقواعد البيانات العلائقية

    سنبدأ بلمحة تاريخية بحيث يتم توضيح بدايات هذه اللغة و من بدأ بها من ثم سوف نستعرض قاعدة البيانات
    التي سوف نستخدمها في هذا الشرح لاستعراض الأمثلة بالضافة الى تعابير قواعد البيانات العلائقية و سوف نستعرض أيضا طريقة
    تنفيذ أوامر SQL البيئات البرمجية التي تعمل ضمنها و سنتطلع في نهاية الأمر على معالج أوامر VisData SQL
    المرفق بلغة vb و كذلك على استخدام تعابير sql المضمنة في برمجيات VB
    تم تطرير لغة SQL قبل IBM في مخبر أبحاث سان جوزية في بدايات 1970 وقد تم عرض هذه اللغة في مؤتمر ACM عام 1974
    باسم SEQUEL و ذلك اختصارا لعبارة structured english query language
    و تلفظ سيكويل و قد أطلق عليها الأسم المختصر لاحقا SQL
    و رغم أن هذه اللغة من تأليف IBM فان أول عملية زرع لها تمت من قبل شركة ORACLE و كانت تسمى و قتها (relational software inc)
    تمت أغلب عمليات الزرع التجارية اللاحقة على أنظمة قةاعد بيانات علائقية DBMS مبينية ضمن أنظمة UNIX مثل
    ORACLE و ingres و informix و قد تبعتهم IBM لاخقا عام 1981 من خلال نظام SQL/DS الذي تحول الى DB/2 ابتداءا من عام 1983
    قامت هيئة المواصفات ANSI بنشر معيار (SQL-86) علم 1986 تبعها اصدار دولي لهذه المعاير من قبل هيئة ISO عام 1987
    تم اصدار تحديث جوهري لهذا المعيار عام 1989 باسم SQL-89 و تعنمد أغلب أنزمة ادارة قواعد البيانات DBMS حاليا واحدا على الأقل من مستويات معاييرعام 1989
    تمت مراجعة المعايير مرة ثانية عام 1992 حيث اضيفت امكانيات أخرى الى لغة sql و أصبحت SQL-92 أكبر من مجموعة SQL-89 و بالتالي فانه يمكن لبرامج قواعد المعطيات القديمة أن تعمل بوجود المعايير الجديدة بدون تعديلات جوهرية
    لقد كان باستطاعة بائعي أنظمة DBMS حتى عام 1996 الطلب من الهيئة الوطنية للكتنولوجيا و المواصفات (NIST) التحقق من موافقة منتجاتهم لمعاير SQL حيث كانت عمليات التحقق و الموافقة تعتبر تشجيع كبير لبائعي أنظمة DBMS من أجل الألتزام بمعاير SQL و رغم ان عدم الألتزام بالمعايير و المواصفات قد يوفر على بائعي الأنظمة بعض المال و لكنه يؤدي الى الأبتعاد عن المعايير و بالتالي عدم التوافقيه

    الأمكانيات الحالية و المستقبلية

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

    مقاهيم أساسية لقواعد البيانات العلائقية

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

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

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

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

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

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

    بما ان المفتاح الأساسي و حيد فان قيمه لا يمكن أن تكون معدومة (NULL) و هي قيمة تعني " غير معروف " و بالتالي فان نظام DBMS يقوم بالتأكد من أن قيمة المفتاح الأساسي و حيدة و غير معدومة

    يتم التعبير عن علاقات الأرتباط بين الجداول في قاعدة البيانات العلائقية من خلال تضمين جدولين أو أكثر بأعمدة تعريف متوافقة

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

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

    جداول القاعدة الجداول الأفتراضية و العروض

    ندعو الجداول المخزنة فعليا ضمن قاعدة البيانات بجداول القاعدة (الجداول الأساسية) وهي جزء دائم من القاعدة.بالمقابل فان نظام DBMSيقوم بانشاء جداول مؤقتة في الذاكرة الئيسية لجهاز العمل جوابا على استفسار ما.ندعو هذا النوع من الجداول بالجداول الافتراضية .حيث أن جداول الأستفسارات الأفتراضية هي عبارة عن جداول مؤقتة يتم تدميرها في أغلب الحالات عندما يقوم المستخدم باستفسار استدعاء جديد(retrieval request) .
    يمكن أن تحتوي قاعدة البيانات أيضا على مناظر أو عروض يتم تخزينها في قاموس المعطيات كتعبير استفسار و عندما يذكر مستخدم ما اسم منظر في تعبير تعامل بالمعطيات يقوم نظام DBMS بتنفيذ تلك الأستفسارات و انشاء جدول افتراضي يحتوي على النتيجة في الذاكرة الرئيسية يمكن بعد ذلك التعامل مع المنظر و اجراء الأستفسارات عليه تماما كجدول

    قاعدة البيانات التوضيحية ( مخزن كتب الكتروني )

    ان الذي سوف نستخدمه هو عبارة عن مخزن للكتب موجود على الأنترنت
    يتم التعبير عن الجداول ضمن هذه القاعدة كما يلي :

    Table_name (primary key, column,…)

    يبدأ التعريف باسم الجدول يتلوه أسماء الأعمدة ضمن قوسين و يتم و ضع اسم المفتاح الأساسي في البداية و يتم تمييزه هنا بوضع خط تحته
    تحتوي قاعدة مخزن الكتب على الجداول السبعة التالية :
    Customers (customer numb, customer_first_name, customer_last_name, customer_street, customer_city, customer_state,
     customer_zip, customer_phone, customer_email)

    Books (isbn, author_name, title, publisher_name, publication_year, binding, source_numb, retail_price)

    Author (author name)

    Publishers (publisher name)

    Sources ( source numb, source_name, source_street, source_city, source_state, source_zip, source_phone)

    Order (order numb, customer_numb, order_date, credit_card_numb, card_exp_date, order_filled)

    Order_lines (order numb, isbn, quantity, cost_each, cost_line, shipped)


    وتتميز هذه الجداول بكل ما يميز قواعد البيانات العلائقية التقليدية:

    من الصعب تعريف مفتاح أساسي لمعطيات مثل أسماء الأشخاص نظرا لأمكانية الأزدواجية .كما أن تجميع الأسم والعنوان ورقم الهاتف يشكل مفتاح أساسي طويل ويمكن أن يؤدي الى مشاكل عندما تتغير قيم هذه المعطايات ( العنوان,رقم الهاتف مثل ) لحل هذه المشكلة نقوم باستخدام معرف عشوائي وحيد مثل
    رقم الزبون في حالتنا هذه وقد استخدمنا رقم معرف عشوائي لكل من جدول الزبائن المصدر والطلبيات

    يحتوي جدول الكتب على مفتاح أساسي طبيعي و هو رقم الكتاب وفق معيار ISBN وهو رقم وحيد و معرف للكتاب في جميع أنحاء العالم

    يحتوي جدول أسطر الطلبيات على مفتاح أساسي مركب و هو يسمح بتحديد أي كتاب يظهر في الطلبية

    تعتبر جداول المؤلفين و الناشرين جداول مرجعية للتحقق من ادخال أسماء المؤلفين و الناشرين بشكل وحيد و متماثل في جدول الكتب للقيام بذلك تم تعريف أعمدة author_name و publisher_name كمفاتيح خارجية تشير الى المفاتيح الأساسية في كل من جدولي المؤلفين و الناشرين عند تغير قيم عمود المؤلف أو الناشر في جدول الكاتب يقوم نظام DBMS بالتحقق من كون القيم متوافقة مع قيم الجداول المرتبطة بها من خلال المفتاح الرئيسي

    يحتوي جدول الكتب على مفتاح خارجي اضافي source_numb يربط كل كتاب بالمصدر الذي يمكن طلبه منه في جدول المصدر source

    يحتوي جدول الطلبيات على مفتاح خارجي customer_numbيربطه مع جدول الزبائن

    يحتوي جدول أسطر الطلبيات على مفتاحين خارجيين يربطان كل سطر من الطلبية باسم الكتاب في جدول الكتب و بطلبية محددة في جدول الطلبيات

    الدرس القادم
    التعامل مع العلاقات ( الجداول )

    كلمات مفتاحية  :
    مقالة قصيرة مجموعة الدروس ISO

    تعليقات الزوار ()