المفاهيم الأساسية في نظم إدارة قواعد البيانات
أو ً لا- المقدمة
والمعروفة اختصارًا باسم (DataBase Management Systems) تلعب نظم إدارة قواعد البيانات
دورًا مسيطرًا في بناء نظم المعلومات الحديثة، حيث يتم تصميم وتشغيل معظم نظم المعلومات DBMS
الحالية في المنظمات باستخدام نظم إدارة قواعد البيانات.
يعود السبب في ذلك إلى مجموعة من المزايا التي يؤمنها استخدامها نظم إدارة قواعد البيانات في
تشغيل النظام المطور (مثل المرونة والاستقلالية والتكامل)، والتي تعجز أساليب البرمجة التقليدية،
المتمثلة باستخدام لغات البرمجة، عن تحقيقها.
تشكل نظم إدارة قواعد البيانات أهم وأكثر تقنية مستخدمة في بناء نظم المعلومات وتشغيلها، يعود
السبب في ذلك إلى مجموعة من المزايا التي يؤمنها استخدامها نظم إدارة قواعد البيانات في تشغيل
النظام المطور، والتي يصعب تحقيقها في ظل البرمجة التقليدية، المتمثلة باستخدام لغات البرمجة، عن
تحقيقها، مثل: المرونة والاستقلالية والتكامل.
Relational ) من بين مختلف أشكال نظم إدارة قواعد البيانات تشكل نظم إدارة قواعد البيانات الترابطية
أكثر الأنظمة استخدامًا وانتشارًا في تطوير نظم المعلومات، لما (Database Management Systems
تتمتع به النظم الترابطية من إمكانيات غير محدودة في تقويم مخزون البيانات وبساطة منطقها في
عرض البيانات المخزنة بالنسبة للمستخدم.
Oracle, Access, ) يوجد في التداول مجموعة كبيرة من نظم إدارة قواعد البيانات الترابطية مثل
.(Ingers, FoxPro
في هذا الكتاب لتوضيح كيفية بناء نظم المعلومات (Microsoft Access) وقد رأينا أن نستخدم نظام
الإدارية في ظل قواعد البيانات الترابطية.
من المفيد في البداية التعريف بمكونات قاعدة البيانات، ثم التعرض بعد ذلك إلى النواحي الفنية والتقنية
في قواعد البيانات من ناحية إنشاء قاعدة البيانات وإدخال البيانات إليها والحصول على المعلومات من
قاعدة البيانات..الخ.
نظام قاعدة البيانات هو بشكل مبدئي حفظ السجلات بواسطة الحاسوب.
وقاعدة البيانات بحد ذاتها هي عبارة عن مستودع إلكتروني لحفظ السجلات والملفات.
تنفيذ عدد من العمليات على الملفات مثل: (User) يمكن للمستخدم
1) إضافة ملف جديد إلى بنك المعلومات.
2) إضافة بيانات جديدة إلى الملفات الموجودة.
3) استرجاع البيانات من الملفات الموجودة.
4) تحديث البيانات في الملفات الموجودة.
5) حذف البيانات من الملفات الموجودة.
6) حذف بعض الملفات الموجودة من بنك المعلومات مثل الملفات الفارغة.

ثانيًا- نظام قاعدة البيانات
نظام إدارة قواعد البيانات: هو عبارة عن حزمة برمجية جاهزة، تمكن المصمم من إنشاء قاعدة
البيانات، وإجراء التعديلات عليها ومعالجة البيانات المخزنة في قاعدة البيانات من أجل الوصول إلى
المعلومات المطلوبة من قبل المستخدمين. الغرض الرئيس لنظام قاعدة البيانات المحوسب هو تخزين
البيانات والسماح للمستخدم باسترجاعها وتحديثها حسب حاجته.
يمكن النظر بشكل مبسط إلى قاعدة البيانات على أنها نظام لحفظ السجلات بواسطة الحاسوب أو أنظمة
الملفات الإلكترونية، إنها عبارة عن مستودع لمجموعة من الملفات المخزنة في الحاسوب، ويزود
المستخدم بمجموعة من التسهيلات من أجل تنفيذ عدد كبير ومتنوع من العمليات على هذه الملفات من
بينها:
-1 إضافة ملف جديد إلى قاعدة البيانات.
-2 إضافة بيانات جديدة إلى الملفات الموجودة.
-3 استرجاع البيانات من الملفات الموجودة.
-4 تحديث البيانات في الملفات الموجودة.
-5 حذف البيانات من الملفات الموجودة.
-6 حذف بعض الملفات الموجودة من بنك المعلومات مثل الملفات الفارغة.
المعلومات: هي أي شيء هام للمستخدم الشخص أو للمنظمة من اجل تسيير العمل الشخصي أو أعمال
المنظمة.
ثالثًا- مكونات نظام المعلومات المحوسب
( يتكون نظام المعلومات المحوسب، باستخدام نظم إدارة قواعد البيانات، كما هو واضح في الشكل ( 2
من المكونات التالية:
قاعدة البيانات. ????
البرمجيات أو نظام إدارة قواعد البيانات. ????
التجهيزات المادية. ????
المستخدمين. ????

-1 قاعدة البيانات
يمكن تعريف قاعدة البيانات بأنها: مجموعة من البيانات أو المعلومات المتصلة، ذات العلاقات المتبادلة
فيما بينها والمخزنة بطريقة نموذجية ودون تكرار، إنها التجميع المستمر للبيانات التي يتم استخدامها
من قبل التطبيقات المختلفة في منظمة محددة.
إن نظام المعلومات يتكون من مجموعة مدخلات حول العمليات يتم تخزينها داخل النظام لتعالج وفق
أساليب محددة من أجل الوصول إلى المعلومات المطلوبة مع تأمين الرقابة الكافية على أصول
المنظمة.
تتكون قاعدة البيانات من بيانات حول موارد المنظمة (عاملين، مواد أولية، منتجات، عملاء،
موردين..الخ) والعمليات (الأحداث، بيع، شراء، استلام، تسليم، نقل..الخ) التي تؤثر على هذه الموارد،
حيث يمكن النظر للنظام على أنه مجموعة بيانات حول هذه الموارد والأحداث.
تقوم فكرة قاعدة البيانات على تخزين الصفات الهامة المتعلقة بالأحداث والموارد على شكل جدول،
فبفرض أننا نريد تجميع البيانات حول المنتجات، العملاء، الفواتير..الخ، أمكننا عرض هذه البيانات في
جداول.
في ظل قواعد البيانات الترابطية:
فقاعدة البيانات السابقة تتضمن رابطة العملاء ،(Relation) يطلق على هذه الجداول اسم رابطة ????
ورابطة المنتجات ورابطة الفواتير ورابطة المبيعات.
.(Record) تتضمن كل رابطة مجموعة الأسطر يطلق على الواحد منها سجل ????
فالحقول المكونة لسجل المنتجات هي: ،(Fields) يتكون السجل بدوره من مجموعة حقول ????
(رقم المنتج، التوصيف، مستوى إعادة الطلب، الكمية في المخزن، تكلفة الوحدة)
إن ما يميز تنظيم قواعد البيانات هو أنها تؤمن التكامل بين البيانات المخزنة والتشارك في استخدام
البيانات المخزنة.
توزيع بيانات النظام على عدة ملفات والمحافظة على الترابط بين DataBase Management Systems 1Integrated) يقصد بالتكامل ????
البيانات مع أقل تكرار وحشو في البيانات، فرغم توزيع بيانات المبيعات على عدة جداول فإنه
يمكن ربط هذه الجداول والوصول إلى المعلومة المطلوبة. مثلا يمكن الوصول إلى عدد الوحدات
التي اشتراها أحد العملاء من المنتج "غسالة".
فتعني أن عنصر البيانات الواحد يمكن أن يستخدم من قبل عدة DataBase Management Systems 1Shared) أما التشارك ????
مستخدمين. بمعنى أن كل واحد من المستخدمين يملك القدرة على الوصول إلى البيانات المخزنة
في نفس الوقت. ويقتضي هذا التشارك أن مستخدمًا معينًا يكون مربوطًا عادة مع جزء صغير من
قاعدة البيانات هو ذلك الجزء اللازم له لإنجاز عمله. فمث ً لا يمكن لموظف المبيعات وموظف
المخزن ومحاسب المدينين التعامل مع قاعدة البيانات السابقة، مع اختلاف الحقول التي يحتاجونها
فحقل مثل مستوى إعادة الطلب يهم موظف المخزن ولا يهم محاسب المدينين وحقل السعر يهم
موظف المبيعات..الخ.
-2 نظام إدارة قاعدة البيانات
بعد أن تعرفنا بشكل مبسط إلى قاعدة البيانات، سنتطرق الآن إلى نظام إدارة قواعد البيانات
أي ببساطة النظم التي تمكننا من بناء قاعدة البيانات السابقة ،(Database Management system)
واستخدامها.
نظم إدارة قواعد البيانات: هي مجموعة من البرامج المصممة بشكل يمكن مصمم النظم من تنظيم
ملفات البيانات وإدخال البيانات إلى الملفات، بالإضافة إلى احتوائها على مجموعة البرامج التي تمكن
المستخدم من تصميم التقارير والنماذج والاستعلامات وكتابة التطبيقات.
يتمكن المستخدم ببساطة من الحصول على المعلومات المطلوبة من البيانات المخزنة في قاعدة
البيانات، من دون أن يحتاج المستخدم إلى معرفة التفاصيل الدقيقة حول آلية تخزين البيانات على
التي تتولى مهمة الفصل بين (Interface) وسائط التخزين، ويتم تحقيق ذلك عبر طبقات من البرامج
المستخدم وبين شكل تخزين البيانات على وسائط التخزين.
يتضمن نظام إدارة قواعد البيانات مجموعة من البرامج، التي تقوم بأداء عدد من الوظائف: تسمح
بإنشاء قاعدة البيانات وإدخال التعديلات عليها، إدخال البيانات إلى قاعدة البيانات وتحديثها، توفير
الإمكانية للمستخدم لإعداد التطبيقات التي تتناسب وعمله وحاجته على المعلومات.
أهم وظائف نظم إدارة قواعد البيانات الوظائف التالية:
تعريف الروابط. ????
معالجة البيانات. ????
الاستعلام من قاعدة البيانات. ????
ضمان حماية البيانات ونزاهتها. ????
ضمان استعادة البيانات وعدم ازدواجية الاستخدام. ????
قاموس البيانات. ????
سوف نستعرض بشكل موجز كل هذه الوظائف لنظام إدارة قواعد البيانات:
.(Data Description Language) 1) لغة تعريف البيانات
.(Data Manipulation Language) 2) لغة معالجة البيانات
.(SQL) 3) لغة الاستعلام
4) ضمان حماية البيانات وسلامتها.
5) ضمان استعادة البيانات وعدم التداخل في التحديث.
6) قاموس البيانات.
لغة تعريف البيانات
تهدف إلى ،(Compiler) يحتوي نظام إدارة قواعد البيانات على مجموعة برامج يطلق عليها المترجم
تمكين المستخدم من تعريف الروابط الخاصة بقاعدة البيانات، أي تحديد السجلات التي تنتمي إلى
رابطة معينة، والحقول المكونة للسجل.
والتي تعرف اختصارًا ب (Data Description Language) تستخدم لهذا الغرض لغة تعريف البيانات
التي تستخدم لتعريف وتوصيف الملفات والسجلات المكونة للملفات ضمن قاعدة البيانات تحت (DDL)
وجهات نظر المستخدم.
تتضمن لغة تعريف البيانات الوظائف التالية:
توصيف ملفات النظام والسجلات والحقول المكونة للملفات. ????
توصيف العلاقات بين الملفات. ????
توصيف شروط وقواعد التكامل. ????
توصيف أشكال التقارير التي تصدر عن النظام. ????
لغة معالجة البيانات
يجب أن يكون نظام إدارة قواعد البيانات قادرًا على تنفيذ طلبات المستخدمين باسترجاع المعلومات من
قاعدة البيانات وتحديثها وإضافة سجلات جديدة إلى قاعدة البيانات، وباختصار يجب أن يكون النظام
قادرًا على معالجة البيانات المخزنة قاعدة البيانات.
يضاف مترجم آخر لنظام إدارة قاعدة البيانات يتولى تلقي طلبات المعالجة وترجمتها وتنفيذها<
والتي تسمى اختصارًا (Data Manipulation Language) هذا المترجم هو مترجم لغة معالجة البيانات
وهي عبارة عن لغة تنظيمية من أجل استخدامها في معالجة البيانات المخزنة ضمن قاعدة (DML)
البيانات.
DataBase Management Systems 1DML) من الأمثلة على الوظائف التي يمكن أن تقوم بها لغة معالجة البيانات
إضافة سجلات جديدة إلى ملف موجود. ????
فتح ملف معين موجود ضمن قاعدة البيانات. ????
إغلاق ملف مفتوح مسبقًا. ????
قراءة بعض أو كل السجلات الموجودة ضمن ملف معين. ????
تغيير محتويات الحقول الموجودة في سجل معين. ????
دمج الملفات وإجراء الترابط بين الملفات. ????
مسح سجل أو مجموعة سجلات من أحد الملفات. ????
صياغة البرامج التي تسمح بإجراء عمليات المعالجة على البيانات مثل العمليات الحسابية والمنطقية ????
وعمليات فهرسة وفرز السجلات في الروابط.
لغة الاستعلام
تستخدم لطلب معلومات من قاعدة البيانات حيث كانت لغة معالجة البيانات قد استخدمت لتغيير
محتويات قاعدة البيانات فتقوم لغة الاستعلام باسترجاع وتصنيف وترتيب وتحضير مجموعات فرعية
من قاعدة البيانات للإجابة على استعلام المستخدمين.
ومعظم أنظمة لغات الاستعلام تحتوي على حيادية وعدالة كبيرتان بالإضافة إلى سهولة الاستخدام في
نفس الوقت.وتشغل الأوامر يمكن المستخدم من الحصول على المعلومات التي يريدها من دون الرجوع
إلى المبرمج.
تتضمن العديد من أنظمة إدارة قواعد البيانات نظام لإعداد التقارير وهو عبارة عن لغة مبسطة لإنشاء
تقرير وبشكل نموذجي فإن المستخدمين الذين يحتاجون بعض عناصر البيانات يمكنهم كتابة التقرير
وتحديد كيفية تنسيقه وسيقوم كاتب التقارير بعدها بالبحث في البيانات وفك ضغط عناصر بيانات
محددة وطباعتها كمخرجات حسب التنسيق الخاص الذي طلبه المستخدم. في العادة كافة المستخدمين
يستطيعون الوصول إلى كلً من لغة استعلام البيانات وكاتب التقارير، لكن يجب تقييد الوصول إلى لغتا
التوصيف والمعالجة للبيانات لهؤلاء الموظفين وحصرها فقط لمدير قاعدة البيانات والمبرمجين مما
يساعدنا على تحديد عدد الأشخاص الذين يستطيعون تغيير قاعدة البيانات.
ضمان حماية البيانات وسلامتها
يقدم نظام إدارة بنك المعلومات من خلال لغة معالجة البيانات الإمكانية لتعريف وتصميم قواعد لضمان
المخزنة في قاعدة البيانات، كما يقدم نظام إدارة بنك المعلومات الإمكانية (Data security) أمن البيانات
.(Data Integrity) لضمان سلامة البيانات
يقصد بأمن البيانات: حماية البيانات من الوصول غير المشروع إليها ويتم ذلك من خلال تحديد ????
سلطات مستخدمي بنك المعلومات في الوصول إلى البيانات وتحديد نوع العمليات التي يسمح لهم
إجراؤها على البيانات. فمث ً لا لا يسمح لموظف المخزن بتعديل البيانات المتعلقة بأسطر الفاتورة
في قاعدة بيانات المبيعات السابقة.
يقصد بسلامة البيانات: أن البيانات المخزنة يجب أن تكون صحيحة وخالية من التناقض في كل ????
وقت من الأوقات وذلك من خلال:
الرقابة على المدخلات من أجل منع تسجيل بيانات متناقضة أو غير صحيحة. ????
ضمان أمن الملفات من الضياع أو التلف أو التزوير والتلاعب. ????
حماية البيانات المخزنة من الوصول غير المشروع إليها عن طريق تعريف حقوق الوصول ????
إلى البيانات.
فعلى سبيل المثال عندما يرغب أحد المستخدمين إدخال فاتورة جديدة إلى قاعدة بيانات المبيعات في
جدول الفواتير، أن يدخل رقم العميل، بالرغم من عدم وجود رقم العميل المدخل في جدول العملاء،
ففي مثل هذه الحالة تكون البيانات غير نزيهة، إذ كيف يمكن وجود لرقم العميل في جدول الفواتير من
دون أن تكون البيانات المتعلقة بهذا العميل في جدول العملاء.
ضمان استعادة البيانات وعدم التداخل في التحديث
بما أن المنظمة تضع معظم بياناتها في قاعدة البيانات، لذلك يقدم نظام إدارة قاعدة البيانات الوسائل
التي يصيبها الضرر في حال حدوث خطأ (Data Recovery) الضرورية من أجل إعادة إنتاج البيانات
من قبل المستخدمين أو عطل في المكونات المادية للنظام بأقل عدد ممكن من المعالجات، كذلك يقدم
الإمكانية لتوليد نسخ احتياطية من الملفات لاستخدامها في حالات الطوارئ.
كون نظم إدارة قواعد البيانات تسمح لعدة مستخدمين أو برامج (Concurrency) تنشأ مشكلة التداخل
بالوصل واستخدم عنصر البيانات في نفس الوقت، وفي مثل هذه الحالة تنشأ الحاجة إلى وجود آلية
للرقابة على هذا التداخل، بحيث لا تحول عملية معينة تتم على البيانات من قبل المستخدم (آ) من دون
إتمام العملية المطلوبة من قبل المستخدم (ب).
قاموس البيانات
الذي يمكن أن يفهم ،(Data Dictionary) يحتوي نظام إدارة قواعد البيانات على وظيفة قاموس البيانات
على أنه قاعدة بيانات خاصة بالنظام وليس بالمستخدم، تتضمن بيانات حول البيانات المخزنة في قاعدة
إن هذه الوظيفة تمكن من تخزين مواصفات ،(Metadata) البيانات، لذلك يطلق عليه البيانات التحتية
كل حقل من حقول قاعدة البيانات الأساسية مثل: (اسم الحقل، نموذج البيانات، حجم الحقل، فهرسة
الحقل، شروط النزاهة الخاصة بالحقل، والتطبيقات التي يحق لها أن تتعامل مع هذا الحقل وحدود هذا
التعامل، والربط بين الحقل في هذه الرابطة والروابط الأخرى وشروط هذا الربط..الخ).




اسم المفردة: وهو الاسم الذي نستخدمه داخل النظام للتعبير عن عناصر البيانات. مثل أن نسمي( ????
.(Name) واسم الزبون ب (Custnr) رقم العميل) ب
تعريف المفردة: ويشمل تحديد معنى المفردة ومفهومها بالإضافة إلى تحديد نوع المفردة وطولها ????
(أي عدد الرموز التي تشكل محتوى المفردة). مثل أن نحدد أن رقم الهاتف معرف على مجموعة
الأعداد الصحيحة.
تحديد مصدر المفردة: طريقة الحصول على المفردة هل هي المدخلات أم المعالجة. فمصدر ????
بيانات العملاء هي المدخلات أما رصيد العميل فيتم الحصول عليه من عمليات المعالجة، بالإضافة
إلى ذلك يتم تحديد قواعد التحقق. على سبيل المثال إن رقم العميل يجب أن يكون محصورًا بين 1
. و 1000
أين تستخدم: والمقصود بذلك تحديد القسم أو الدائرة التي تستخدم مفردة البيانات المذكورة ????
والتقارير التي تستخدم فيها هذه المفردة . فمث ً لا يستخدم حقل الرصيد من قبل قسم الحسابات المدينة
عند إعداد كشوف العملاء الشهرية.
التحديث والصيانة: يجب تحديد كيفية تحديث مفردة البيانات وتوقيت عملية التحديث ودوريتها. ????
فمثلا تتم عملية تحديث رصيد العميل بعد كل عملية بيع أو سداد.
التخزين: وتتضمن تحديد أسماء الملفات التي تحتوي على مفردة البيانات وتحديد الوسط التخزيني ????
الذي يخزن الملف عليه.
-3 المكونات المادية
التجهيزات الضرورية لبناء واستخدام بنك المعلومات وتتلخص (Hard Ware) يقصد بالمكونات المادية
المكونات الضرورية لبناء وتشغيل بنوك المعلومات، بالمكونات التالية:
إلى الحواسب الشخصية (Main Frame) الحواسب بمختلف أنواعها من الحواسب الكبيرة ????
.(Personal Computer)
وسائط التخزين المباشرة المناسبة مثل الأقراص المغناطيسية والأقراص الصلبة والأقراص ????
المرنة..الخ.
المربوطة بالحاسب مثل الشاشات الآلات الطابعة من أجل إدخال (Terminal) الأجهزة الطرفية ????
البيانات إلى البنك واستدعاء المعلومات من البنك.
قنوات الاتصال بين حواسب الشبكة وهي الوسائط التي تستخدم في نقل البيانات بين المكونات ????
.(Multiplexer) المادية للنظام الحاسوب مثل المودم ، الأسلاك، المازج
في بنوك المعلومات التي تكون البيانات فيها كبيرة الحجم وتعالج بكثافة مثل المحاسبة يجب أن تتصف
المكونات المادية بالصفات التالية:
-1 طاقة تخزينية كبيرة للوحدة الواحدة بهدف تخفيض تكلفة التخزين.
-2 زيادة الاستقلالية بين تنظيم البيانات والمكونات المادية بهدف الوصول إلى درجة ثقة عالية.
-4 المستخدمين
يتم التميز بين ثلاثة أنماط من مستخدمي قاعدة البيانات هم:
.(Database Administrator) مدير قاعدة البيانات ????
.(Applications programmers) مبرمجي التطبيقات ????
.(End Users) المستخدمين النهائيين ????
مدير قاعدة البيانات
بما أنه من غير المسموح أن توجه بنوك المعلومات إلى إيفاء المتطلبات لمستخدم معين من بين
المستخدمين, وإنما يجب أن يخدم جميع المستخدمين بنفس الدرجة, لذلك يقوم مدير بنك المعلومات
بوظيفة تحقيق التوافق بين متطلبات المستخدمين والاستغلال الأمثل لطاقات وإمكانيات النظام.
تشمل مهام مدير قاعدة البيانات الوظائف التالية:
تحديد متطلبات قواعد البيانات المطلوبة من برمجيات وتجهيزات، ????
إدامة النظام والتنسيق بين متطلبات المستخدمين عند استخدام قواعد البيانات. ????
توفير الأمن والحماية لقواعد البيانات. ????
إلى وضعها الطبيعي في (Recovery) إعادة تنظيم قاعدة البيانات عند الحاجة وتأمين إعادة البيانات ????
حال حدوث الخطأ في العمليات مع البنك.
تحديد صلاحيات المستخدمين في الوصول وإجراء العمليات على قاعدة البيانات. ????
الرقابة وضبط أداء النظام ضمن مقياس عمل مثالي. ????
مبرمجي التطبيقات
يقوم مبرمجي التطبيقات بإعداد البرامج التي تقوم بمعالجة البيانات المخزنة في قاعدة البيانات من أجل
أن تقدم الإمكانية للمستخدم النهائي لإضافة البيانات ,تعديلها واسترجاعها.
يقوم مبرمجو التطبيقات بكتابة هذه البرامج بإحدى لغات البرمجة التي عادة ما تكون مربوطة مع لغة
ويتم عادة من خلال هذا البرنامج تصميم الشاشات والبرامج الحوارية بين (DML) معالجة البيانات
المستخدم والحاسب.
وبرنامج التطبيقات هو مجموعة من فعاليات المعالجة المترابطة والمغلقة.
تشمل مهام مبرمجي التطبيقات المهام التالية:
تحويل وترجمة تصميم قاعدة البيانات إلى قاعدة بيانات فعلية باستخدام إحدى اللغات المناسبة. ????
تنفيذ الأنظمة والبرمجيات والتأكد من صحتها وخلوها من التناقض. ????
صياغة شاشات التخاطب والإدخال والإخراج التي تحتاجها نظم قواعد البيانات وتنفيذها. ????
صياغة أنماط وأشكال النماذج والتقارير المطلوبة وتنفيذها. ????
المستخدمين النهائيين
هم الذين يتحاورون مع النظام من خلال المحطة الطرفية بواسطة إما برنامج التطبيقات الوارد في
التي يقدم بعض ،(SQL) الفقرة السابقة أو بواسطة اللغات الموجودة في نظام إدارة بنك المعلومات مثل
ليتمكن المستخدم النهائي من (SELECT, INSERT,UPDATE,DELETE ..etc.) الأوامر البسيطة مثل
التعامل مع قاعدة البيانات مباشرة.
Database System Architecture رابعًا- بناء نظام قاعدة البيانات
لقاعدة البيانات (Views) إحدى المزايا الهامة لنظم إدارة قواعد البيانات هي فصلها بين ثلاث مشاهد
هي:
.(External Level) المشهد الخارجي ????
.(Conceptual Level) المشهد المنطقي ????
.(Internal Level) المشهد الداخلي ????
وهذا الفصل هو الذي يمكن مستخدم قاعدة البيانات من تصميم التطبيق الخاص به من دون الحاجة إلى
معرفة كيفية تخزين البيانات على وسائط التخزين المختلفة.
Database System ) وسوف نستعرض هذه المستويات التي يطلق عليها معمارية نظام قاعدة البيانات
(Architecture
-1 المستوى الخارجي
هو مستوى المستخدم المفرد مثل المستخدم النهائي أو مبرمج التطبيقات.
وبما أن كل مستخدم مهتم فقط بمقطع من قاعدة البيانات الكلية، وهذا المقطع يمثل وجهة نظر المستخدم
على قاعدة البيانات، لذلك يقوم كل مستخدم من المستخدمين بتحديد المعطيات الضرورية ليصل إلى
النتائج المرغوبة عبر القيام بمجموعة من العمليات الحسابية والمنطقية والإدخال والإخراج، وبالتالي
فإن إجراء هذه العمليات يتطلب وجود لغة تمكن من إجراء العمليات على ملفات قاعدة البيانات، هذه
.(SQL) بالنسبة لمبرمجي التطبيقات أو (DML) اللغة هي لغة معالجة البيانات
-2 المستوى المنطقي
يتم في هذا المستوى توصيف الملفات من حيث البنية المنطقية. حيث يتم في هذه المرحلة تحديد
الملفات الضرورية لبناء قاعدة البيانات وتحديد السجلات التي تتكون منها هذه الملفات من حيث حقول
،(DDL) السجل والبيانات التي سوف تخزن في حقول السجل، وذلك باستخدام لغة توصيف البيانات
ويتم وضع هذا التوصيف للملفات بغض النظر عن أشكال تخزينها على وسائط التخزين المغناطيسية
وبغض النظر عن المستخدم الذي سوف يستخدم هذه الملفات.
وبالتالي فهي: بناء الجداول التي تنسجم مع حاجات كافة مستخدمي النظام بشكل إجمالي وليس حسب
حاجة كل مستخدم بشكل مستقل.
كما تعد هذه المرحلة من أهم المراحل عند بناء قاعدة البيانات إذ أنها تتضمن الفعاليات التالية:
تحليل المشكلة وتحديد الحاجة إلى المعلومات وجريان البيانات والمعلومات ضمن المنظمة. ????
تحديد البيانات التي يجب أن تخزن في قاعدة البيانات من اجل الوصول إلى المعلومات ????
المطلوبة من أجل إشباع حاجة الإدارة إلى المعلومات.
تحديد العلاقات بين الملفات التي سوف يتم تخزينها في قاعدة البيانات. ????
تعريف التوافق المنطقي بين البيانات من اجل ضمان خلو البيانات المخزنة في قاعدة البيانات ????
من التناقض.
تعريف الأشخاص أو الوحدات ضمن المنظمة التي تملك حق الوصول والإطلاع على البيانات ????
المخزنة ضمن قاعدة البيانات.
-3 المستوى الداخلي
هو مستوى البناء المادي أو الفيزيائي للملفات حيث يوجد العديد من أساليب تخزين البيانات على
وسائط التخزين.
ويقصد بآلية تخزين البيانات على وسائط التخزين كيفية تخزين السجلات المكونة لأحد الملفات على
وسيط التخزين من أجل الوصول إلى أفضل أداء لقاعدة البيانات واستخدام أفضل حيز تخزين
واستخدام تراكيب البيانات المناسبة بالإضافة إلى توفير آليات التخاطب مع نظم التشغيل في تخزين
البيانات والسجلات واسترجاعها من وإلى مواقع تخزينها.
ويوجد العديد من أساليب تخزين البيانات على وسائط التخزين مثل الملفات المفهرسة والملفات
المباشرة.
يمكن تخليص وظائف هذا المستوى بالوظائف التالية:
تحديد أماكن التخزين والفهارس للبيانات ????
وصف السجلات لغايات التخزين وتحديد حجمها. ????
حفظ البيانات وتشفيرها ????
تحديد التراكيب الداخلية للبيانات وهياكلها. ????
تقوم فلسفة بنوك المعلومات على تحرير المستخدم من هذه المهام عن طريق قيام نظام إدارة قواعد
البيانات بأداء وظيفة تخزين البيانات الملفات على وسائط التخزين المختلفة.
من أجل تحقيق وتنفيذ نظام المعلومات بالطريقة السابقة يحتاج المرء إلى نظام بنك معلومات ذي
إمكانيات كبيرة وكذلك إلى لغة معالجة بيانات يسهل استخدامها على غير المختصين في الحاسوب مثل
العاملين في أقسام المحاسبة والأقسام المالية وذلك من اجل أن يتمكنوا من استخدام بنك المعلومات لحل
المشاكل التي تواجههم ويصلوا إلى المعلومات التي يرغبون بالوصول إليها.
خامسًا- مزايا نظم إدارة قواعد البيانات
إن استخدام الأساليب التقليدية (ندعوها بنظم الملفات)لمعالجة المعلومات في تشغيل نظم المعلومات
الإدارية في المنظمات نتج عنه مجموعة من السلبيات.
سلبيات الأساليب التقليدية:
1) يقوم كل تطبيق بإدارة وتكوين ملفاته الخاصة: وبما أن التطبيقات مرتبطة ببعضها فإن ذلك
يؤدي إلى تخزين نفس البيانات في العديد من الملفات العائدة للتطبيقات المختلفة، مما يؤدي إلى
نشوء حشو وتكرار في تخزين نفس عناصر البيانات في عدة ملفات، مما يعيق عمليات التحديث
ويجعلها طويلة.
2) إن الملفات تكون مصممة من قبل برنامج التطبيق وبما يتلاءم مع احتياجات التطبيق وبالتالي
فإن البرنامج هو الذي يحدد هيكل الملفات وتفاصيلها: وبالتالي فإن أي تعديل في بنية هذه الملفات
سوف يتطلب تعديل البرنامج وكذلك فإن التعديل في البرنامج قد يتطلب تعديل الملفات وتابعية
الملفات للبرامج.
3) إن خطوات المعالجة الضرورية لحل مشكلة معينة (الخوارزمية)، أو الوصول إلى معلومات
معينة يتم تحديدها بعد ظهور المشكلة أو بنشوء الحاجة إلى المعلومة المطلوبة: وبالتالي فإن
الوصول إلى تلك المعلومة يتطلب إعداد الخوارزمية وكتابة البرنامج الذي سوف يقوم بأداء هذه
المهمة وذلك يتطلب وقتًا مما يعني التأخير في حل المشكلة المطلوبة.
4) إن الرقابة على صحة ونوعية البيانات المعالجة والمدخلة هي من اختصاص برنامج التطبيقات
نفسها: والمبرمجون عادة هم الذين يحددون نوع ودرجة الرقابة المنطقية التي يؤديها البرنامج.
إن ذلك قد يكون كاف في ذاته تحت وجهة نظر واعتبارات التطبيق، أما بالنسبة لنظام المعلومات
بشكل خاص في المنظمة فإن ذلك يعتبر غير كافي. لذلك لا بد من وجود وسائل وخطوات
رقابية إضافية لضمان صحة البيانات بحيث تكون البيانات المخزنة في عدة ملفات خالية من
التناقض فيما بين هذه الملفات وتعبر عن الواقع الفعلي للمنظمة.
5) إن وضع تطبيقات جديدة على الملفات الموجودة في النظام هو أمر مكلف على الأغلب إذ أن
ذلك يتطلب إعادة هيكلة الملفات الموجودة أو إنشاء ملفات جديدة تتلاءم والتطبيق الجديد.
إن استخدام نظم إدارة قواعد البيانات في تطوير نظم المعلومات يحقق في النظام المطور المزايا
التالية:
1) من خلال النظر إلى قاعدة البيانات من ثلاثة مناظير تترفع استقلالية البرامج عن البيانات:
بحيث أن التعديلات في تصميم الملفات لا تقود إلى تعديلات في البرامج وكذلك فإن التعديلات
في البرامج لا تقود بالضرورة إلى تعديلات الملفات القائمة.
2) البيانات غير تابعة ومرتبطة ببرامج التطبيقات: مما يمكن من إعداد برامج تقويم لمخزون
البيانات في وجهات نظر متعددة، وبالتالي وجود إمكانية لوضع حلول للمشاكل والوصول إلى
معلومات تكون غير مخطط لها أو متوقعة عند تصميم وبناء قاعدة المعطيات.
3) إن كون قاعدة البيانات تسمح بالتشاركية في استخدام البيانات المخزنة، فإنه يمكن تصميم
وتخزن قاعدة البيانات على أساس احتياجات المنظمة بشكل كامل: مما يؤدي إلى التقليل في
تكرار تخزين البيانات وبالتالي يقلل من حجم البيانات الواجب تخزينها وتوثيقها.
4) إن تصميم قاعدة البيانات بشكل موحد حسب احتياجات المنظمة بشكل كامل يؤدي إلى وجود
ضوابط رقابية واحدة لكل البيانات المخزنة في قاعدة المعطيات: مما يعني عدم وجود تناقض
بين الملفات المخزنة في قاعدة البيانات.
5) يقدم نظام إدارة بنك المعلومات من خلال لغة معالجة البيانات الإمكانية لتعريف وتصميم قواعد
لضمان أمن البيانات المخزنة في قاعدة البيانات: ويقصد بأمن البيانات حماية البيانات من
الوصول غير المشروع إليها ويتم ذلك من خلال تحديد سلطات مستخدمي بنك المعلومات في
الوصول إلى البيانات وتحديد نوع العمليات التي يسمح لهم إجراؤها على البيانات.
وتعني سلامة : Data Integrity 6) يقدم نظام إدارة بنك المعلومات الإمكانية لضمان سلامة البيانات
البيانات أي أن البيانات المخزنة يجب أن تكون صحيحة وخالية من التناقض في كل وقت من
الأوقات.
7) استعادة البيانات وإنشاء نسخ احتياطية من الملفات الموجودة في قاعدة البيانات: بما أن المنظمة
تضع معظم بياناتها في قاعدة البيانات. لذلك يقدم نظام إدارة بنك المعلومات الوسائل الضرورية
من أجل إعادة إنتاج البيانات التي يصيبها الضرر في حال حدوث خطأ من قبل المستخدمين أو
عطل في المكونات المادية للنظام أقل عدد ممكن من المعالجات. كذلك يقدم الإمكانية لتوليد نسخ
احتياطية من الملفات لاستخدامها في حالات الطوارئ

قواعد البيانات الترابطية
أو ً لا- مدخل إلى قواعد البيانات الترابطية
يوجد في الواقع العملي ثلاثة أنواع من نظم إدارة بنوك المعلومات هي:
.(Hierarchical Database Systems) نظم بنوك المعلومات الهرمية ????
.(Net Work Database Systems ) نظم بنوك المعلومات الشبكية ????
.( Relational Database Systems) نظم بنوك المعلومات الترابطية ????
يعود هذا التصنيف إلى نموذج البيانات الذي يقدمه نظام بنك المعلومات عند تصميمنا لتراكيب
البيانات.
سنكتفي في هذا المقرر بالتطرق إلى نظم قواعد البيانات الترابطية نظرًا لانتشار استخدامها فمعظم
النظم المقدمة في السوق تدعم هذا الشكل من تراكيب البيانات بالإضافة إلى عدة مزايا أخرى يتمتع بها
هذا النوع من نظم بنوك المعلومات مثل البساطة، المرونة وسهولة العرض.
نظام قواعد البيانات الترابطي أو ما سوف نسميه اختصارًا النظام الترابطي هو نظام يتضمن على
الأقل:
فهم البيانات من قبل المستخدم على أنها قوائم وليس أي شيء آخر غير القوائم ????
وجود بعض العمليات المعرفة التي تمكن المستخدم من إجراء بعض المعالجات على البيانات ????
الموجودة في القوائم مثل استرجاع البيانات أو توليد قوائم جديدة من قوائم قديمة.


إمكانيات النظم الترابطية
1) إن تعريف النظام الترابطي وتصميمه يحتاج لأن تفهم قاعدة البيانات على مستوى المستخدم
على أنها قوائم، وبالتالي فإن القوائم هي التراكيب المنطقية للبيانات في النظم الترابطية، ولكن
ذلك لا يعني أن البيانات سوف تخزن على شكل قوائم على وسائط التخزين، فهذه القوائم يمكن
أن تخزن على وسائط التخزين وفق مختلف أساليب التخزين (تتابعي، مفهرس، مباشر).
ولكن هذا التخزين هو مهمة النظام، وكل ما في الأمر أن نظام إدارة قواعد البيانات يملك القدرة
على تحويل البيانات المخزنة في الملفات وتقديمها إلى المستخدم على شكل قوائم، وبالتالي يحرر
المستخدم من ضرورة معرفة تفاصيل تخزين البيانات على وسائط التخزين عند التعامل معها. 1
2) إن قواعد البيانات الترابطية لها خاصية جيدة وهي: إن المعلومات الكاملة التي تشكل محتوى
قاعدة البيانات تقدم وفق طريقة واحدة على شكل قيم واضحة، محددة ومباشرة.
هذه الطريقة لتمثيل وتصوير البيانات (وضع القيم الواضحة في الأعمدة المكونة للسطر ضمن
القائمة)هي الطريقة الوحيدة المتاحة في النظم الترابطية، وبالتالي لا توجد مؤشرات للربط بين
القوائم ضمن قاعدة البيانات على مستوى التراكيب المنطقية. فعلى سبيل المثال يتم الربط بين
العامل رقم 1 في قائمة العاملين وبين القسم الذي يعمل فيه بشكل واضح ومحدد من خلال وضع
عمود قي قائمة العاملين يتضمن رقم القسم الذي يعمل فيه العامل، ومن خلال هذا العمود نستطيع
أن نعرف أن العامل رقم 1 يعمل في القسم رقم 1، وبالعودة إلى قائمة الأقسام نستطيع القول بأن
القسم رقم 1 هو قسم التسويق.
3) إن قيم كل عناصر البيانات الموجودة في القائمة هي قيم أحادية أي أننا لا نستطيع إدخال أكثر
من قيمة واحد في الحقل في السطر الواحد ولا يمكن وضع مجموعة من القيم.
على سبيل المثال في قائمة العاملين لا يمكن تمثيل حالة كون عامل يعمل في قسمين في نفس
الوقت ضمن قائمة العاملين.
فلو فرضنا أن العامل رقم 1 يعمل في القسم رقم واحد والقسم رقم 2 في نفس الوقت، فإن قواعد
النظم الترابطية لا تسمح بالتعبير عن هذه الحالة على الشكل التالي:
EMP# DEP#
1 1,2
وإنما يتم تمثيل مثل هذه الحالة عن طريق تكوين قائمة جديدة لتمثيل هذه العلاقة على الشكل
التالي:
EMP# DEP#
1 1
1 2
1 انظر فقرة معمارية نظم إدارة قواعد البيانات
وبالتالي فإن النظم الترابطية لا تسمح باستخدام إلا قيمة واحدة في العمود الواحد ضمن السطر.
ثانيًا- المفاتيح في النموذج الترابطي
تعد المفاتيح من أهم خصائص نموذج البيانات الترابطي ومقوماته وخصوصًا في تطوير الروابط
وتحديد العلاقات بين الروابط وهناك عدة أنواع من المفاتيح وهي التالية:
.(Primary Key) 1) المفتاح الرئيسي
.(Candidate Keys ) 2) المفاتيح المرشحة
.(Foreign Key) 3) المفتاح الأجنبي
المفتاح الرئيسي
من بين الصفات الموجودة في الرابطة يتم اختيار صفة أو مجموعة صفات تستخدم للتعرف على
أسطر الرابطة وتمييزها عن بعضها.
هذه الصفة يطلق عليها المفتاح الرئيسي للرابطة مثل رقم العامل في رابطة العاملين ورقم القسم في
رابطة الأقسام.
هذه الصفة أو مجموعة الصفات يجب أن تتمتع بخاصتين حتى يمكن استخدامها كمفتاح رئيسي للرابطة
وهما:
عدم التساوي: أي أن الصفة التي ستستخدم كمفتاح رئيسي للرابطة لا يمكن أن تأخذ القيمة نفسها ????
مرتين في الرابطة الواحدة، وبالتالي فإن استخدام هذه الصفة سوف يقود إلى الوصول للسطر
المطلوب تمامًا.
عدم القدرة على الاختزال: عندما يكون المفتاح الرئيسي مجموعة من الصفات مثلما هو الحال في ????
روابط العلاقات فانه لا يمكن إلغاء أي صفة من هذه الصفات دون التأثير في آلية الوصول إلى
اسطر الرابطة.
فكون المفتاح الأساسي ،(Null Value) لا يجوز أن يترك المفتاح الرئيسي للرابطة فارغًا بدون أي قيمة
وحيد يجعله سطر مميز عن غيره من الأسطر في الجدول ولجعل هذه الميزة حقيقية يجب لا تحتوي
أي قيمة من قيم المفناح الأساسي على قيمة فارغة وذلك من أجل جعل السطر مميزًا عن غيره كما
يساعد ذلك على استرجاع السطر من البيانات المخزنة هناك.
ومع عدم وجود قيمة فارغة لقيم المفتاح الأساسي فإن ذلك يعني أن ذلك الكائن موجود ومميز عن
غيره ويمكن تميزه عن غيره من خلال إرجاعه إلى قيمة المفتاح الرئيسي وهذا ما يشار إليه بقاعدة
الكيان المتكامل لأنه يجب التأكد من أن كافة الأسطر في كافة العلاقات يجب أن تمثل البيانات المتعلقة
بكائن محدد في الواقع الفعلي.
يتم تعليم الصفة المفتاحية للرابطة بوضع خط تحت الصفة أو مجموعة الصفات التي تمثل المفتاح
1) لأخذت الشكل التالي: - الرئيسي للرابط. فلو أردنا التعبير عن رابطة العاملين الواردة في الشكل( 2
R .Employer (EMP#,ENAME,DEP#,SALARY)
لأنها تمثل المفتاح الرئيسي للرابطة. EMP# وبالتالي نلاحظ أننا وضعنا خطا تحت الصفة
يستخدم المفتاح من أجل التعرف على سجل محدود من بين السجلات المكونة للرابطة وبالتالي يوجد
في كل سجل حقل واحد أو مجموعة حقول يكون الهدف منها التعرف أو الوصول إلى السجل المطلوب
وتكون قيمة هذا الحقل مختلفة من سجل إلى آخر ضمن الملف ولا يمكن تغيير قيم هذا الحقل طوال
حياة الملف.
المفاتيح المرشحة
وهي مجموعة الصفات المرشحة أن تلعب دور المتاح الرئيسي لرابطة وعند مرحلة التنفيذ وإدخال
عندها نستثني هذا الحقل من أن يصبح (Null) البيانات للجدول، إذا تبين أن بعض قيم هذه الصفة هي
المفتاح الرئيسي.
عندما يوجد في رابطة معينة أكثر من حقل أو مجموعة حقول كل واحد منهم يمكن أن يكون المفتاح
الرئيسي للملف يطلق على هذه المفاتيح، المفاتيح المرشحة.
المفتاح الأجنبي
لأسباب تتعلق بالرغبة في الإقلال من التكرار في البيانات المخزنة ولأنه يستحيل تمثيل كل النظام من
خلال رابطة واحدة، لذلك يتم تجزئة الرابطة إلى عدة روابط مع المحافظة على العلاقة بين هذه
الروابط.
لذلك نجد في كثير من الأحيان أن المفتاح الرئيسي لإحدى الروابط يظهر في رابطة أخرى.
في رابطة (DEP#) 1) حيث تظهر المفتاح الرئيسي لرابطة الأقسام - كما هو الحال في الشكل ( 2
العاملين بهدف التعرف على القسم الذي يعمل فيه العامل أي التعرف على سطر من أسطر رابطة
أخرى. لذلك تسمى مثل هذه الصفة بالمفتاح الأجنبي.
عندما يكون المفتاح الرئيسي لرابطة معينة، أحد الحقول في رابطة أخرى فإن هذا الحقل في هذه
الرابطة يهدف إلى التعرف إلى سجل موجود في رابطة أخرى ويطلق عليه المفتاح الأجنبي.
ثالثًا- الخواص الرئيسة للرابطة
الرابطة: هي عبارة عن مجموعة تتضمن عناصر هي الأسطر( السجلات).
هي تتصف بناء على ذلك بالمواصفات التالية:
لا يجوز تكرار أحد الأسطر ضمن الرابطة: إن كون الرابطة هي مجموعة من الأسطر لذلك ????
وبالتالي وفق نظرية المجموعات الرياضية لا يجوز أن تحتوي المجموعة عنصرًا مكررًا. يترتب
على هذه الخاصية، أن لكل سطر من أسطر الرابطة مفتاح رئيسي مختلف عن السطر الآخر.
المفتاح الرئيسي هو عبارة عن حقل أو مجموعة من الحقول ضمن الرابطة، يؤدي استخدامه
للوصول إلى ذلك السطر ضمن الرابطة.
أسطر الرابطة هي أسطر غير مرتبة: إن كون أسطر الرابطة تشكل مجموعة في المفهوم ????
الرياضي و بما أن المجموعة هي عدد من العناصر غير المرتبة في المفهوم الرياضي: إن تغيير
ترتيب العناصر ضمن المجموعة لا يغير من طبيعة المجموعة. كذلك فإن ترتيب الأسطر ضمن
الرابطة لا يغير من طبيعة الرابطة.
الصفات المكونة للرابطة هي صفات غير مرتبة: يتم اشتقاق هذه الخاصية أيضًا من أن عنوانين ????
أعمدة القائمة هي عبارة عن مجموعة من الصفات. إن تغيير ترتيب الصفات ضمن الرابطة لا
يقود إلى نشوء رابطة جديدة. لأن الصفات يتم الرجوع إليها من خلال اسم الصفة وليس من خلال
موقعها في الرابطة.
إن قيم الصفات هي قيم أحادية: أي أنه لا يجوز أن تأخذ الصفة أكثر من قيمة واحدة. ????
درجة الرابطة: هي عدد الأعمدة أو الصفات المكونة للرابطة فجدول الأقسام هو جدول من ????
الدرجة الثالثة وجدول العاملين هو جدول من الدرجة الرابعة.
رابعًا- العلاقات بين الروابط
هي عبارة عن الروابط المنطقية بين الجداول. مثل العلاقة بين جدول DataBase Management Systems 1Relationships) العلاقات
العميل وجدول المنتج هذه العلاقة هي عبارة عن عملية البيع.
أن العلاقات والجداول يمكن أن تحتوي على صفات تأخذ قيمًا محددة والعلاقات تنشأ بين الجدوال
ويمكن تصنيف العلاقات بين الجداول في ثلاثة أنواع:
( علاقة من نمط: (واحد: واحد) وتكتب بالشكل ( 1:1 ????
(N: علاقات من نمط: (واحد: متعدد) وتكتب بالشكل ( 1 ????
(M:N) علاقات من نمط: (متعدد: متعدد) وتكتب بالشكل ????
( العلاقات بين الجداول، علاقة من نمط ( 1:1
تنشأ هذه العلاقة عندما يرتبط عنصر من الجدول الأول مع عنصر واحد فقط من الجدول الثاني.
مثل العلاقة بين الجدول (عميل) والجدول (حساب)، وتفسر هذه العلاقة على أن لكل عميل حساب
.( واحد كما إن الحساب عائد لعميل واحد فقط.كما يظهر في الشكل ( 2
يوضح الشكل أن لكل عميل حساب واحد وأن الحساب عائد لعميل واحد فقط وأنه تم إضافة مفتاح
أجنبي هو رقم العميل في جدول الحسابات وهو المفتاح الرئيسي في جدول العملاء أما إذا كان هناك
جدولين لهما نفس المفتاح الرئيسي فيمكن دمجهما في جدول واحد.

الحقول
هو عبارة عن أصغر وحدة للمعلومات التي يوجد لها معنى بالنسبة للمستخدم.
ونقصد بالمستخدم هنا المستخدم النهائي لنتائج المعالجة مثل (المدير، المحاسب ..الخ)، يتعامل هذا
المستخدم مع الحقل كأصغر وحدة أما بالنسبة للمبرمج فإن الأمر يختلف فقد يكون لكل حرف من
حروف الاسم أهمية بالنسبة له.
أثناء عملية توصيف الحقول لابد من تحديد المعطيات التالية:
.(Field Name) اسم الحقل ????
.(Data Type) نموذج البيانات ????
.(Field Size) حجم الحقل ????
اسم الحقل
يهدف اسم الحقل إلى التعرف والوصول إلى الحقل ويستخدم لتحديد مجال القيم للموضوع وأسماء
الحقول في الملف السابق هي (رقم العامل، الاسم، الجنس …. الخ).
حرية كبيرة في تسمية الجداول والحقول والتقارير والأشكال والنماذج MS access يتيح نظام
والماكرو..الخ.
والقواعد العامة في التسمية هي التالية:
لا يجوز استخدام نفس الاسم لنفس النموذج من الكائنات مث ً لا لا يجوز تسمية جدولين بنفس ????
الاسم.
لا يجوز إعطاء الجدول والاستفسار نفس الاسم. ????
الحد الأقصى لعدد أحرف الاسم هو 64 رمز. ????
يمكن للاسم أن يتضمن أحرف أبجدية وأرقام وفراغ ولكن لا يفضل استخدام الفراغ عند ????
تسمية العناصر لأن ذلك يعيق كتابة البرامج لاحقًا.
لا يجوز استخدام الأسماء المعرفة مسبقًا. ????
نموذج البيانات
الذي يجب تعريف الحقل إليه وهو عبارة عن تحديد لنوعية البيانات التي يجب أن تسجل ضمن الحقل
.( ويتم التمييز بشكل أساسي بين نماذج البيانات الواردة في الجدول ( 1
نموذج البيانات طبيعة المدخلات الحجم التخزيني
نص أو تركيبة نصوص وأرقام، كالعناوين. وكذلك الأرقام التي
لا تتطلب حسابات، كأرقام الهاتف، أو أرقام الأجزاء، أو
الأرقام البريدية.
حتى 255 حرفًا.
1بايت لكل حرف.
Currency
العملة
قيم العملة. استخدم نوع البيانات "عملة" لمنع حدوث التقريب
أثناء إجراء الحسابات. بالضبط ويصل عدد الخانات إلى 15
خانة إلى يسار الفاصلة العشرية و 4 خانات إلى يمينها.
8بايت.
Number
رقم
تستخدم البيانات الرقمية للحسابات الرياضية، باستثناء الحسابات
المتعلقة بالأموال (استخدام نوع العملة).
4 ،2 ،1 ، أو 8 بايت
Date/Time
الوقت التاريخ تاريخ وزمن 8بايت.
Yes/No نعم/لا
حقول تحتوي فقط على قيمة واحدة أو اثنتين، مثل "نعم/لا"،
و"صحيح/خطأ"، و"تشغيل/إيقاف". 1 بايت.
الأرقام الفريدة المتتالية (التي تزيد بمقدار 1 ) أو الأرقام 4بايت. 16 بايت ل AuoNumber
ترقيم تلقائي العشوائية يتم إدراجها تلقائيًا عند إضافة سجل. "معرف التكرار.
Memo
مذكرة نص أو أرقام طولية، كالملاحظات أو الوصف. حتى 64.000 حرفًا.
OLE Object
OLE كائن
أو جداول بيانات ، Microsoft Word البرامج (مثل مستندات
أو صور، أو أصوات، أو أي بيانات ثنائية ،Microsoft Excel
أخرى)، التي تم إنشاؤها في برامج أخرى باستخدام البروتوكول
أو Microsoft Access والتي يمكن ربطها بجدول في ،OLE
تضمينها فيه.
حتى 1 جيجا بايت
(مقيدة بواسطة
مساحة القرص).
Hyperlink
ارتباط تشعبي
حقول سوف تقوم بتخزين ارتباطات تشعبية .يمكن أن يكون
URL. أو UNC الارتباط التشعبي مسار
حتى 64.000 حرفًا.
Lookup
معالج البحث
يقوم بإنشاء حقل يسمح لك باختيار قيمة من جدول آخر أو من
قائمة قيم باستخدام مربع تحرير وسرد. يؤدي اختيار هذا الخيار
في قائمة أنواع البيانات إلى بدء معالج لتعريف هذا النوع من
أجلك.
نفس حجم الحقل
المفتاح الأساسي
والذي هو أيضًا
الحقل "بحث"؛ 4
بايت بالضبط



فوائد نموذج البيانات:
تحديد القيم التي يمكن أن يأخذها عنصر البيانات وبالتالي تحديد الظاهرة التي ينتمي إليها عنصر ????
البيانات.
تبسيط عمليات المعالجة عبر تحديد العمليات التي يمكن إجراؤها على نموذج البيانات المحدد. ????
إنها تعد الأساس في عمليات ترميز القيم داخل النظام. ????
حجم الحقل
كل عنصر بيانات يمكن أن يكون ثابت الطول أو متغير الطول.
السجلات
مجموعة من الحقول ذات العلاقة التي تصف موضوعًا محددًا تحت وجهات نظر متعددة تدعى
سجل.
وبالتالي فالسجل هو مجموعة من عناصر البيانات المترابطة بشكل منطقي، والتي تكون مرتبة بشكل
معين. إن حقول إحدى السجلات تشكل وحدة منطقية وتتضمن بيانات حول موضوع معين.
يعد السجل من الوحدات الهامة بالنسبة لعملية البرمجة لأن برنامج الحاسب يقوم عادة باستدعاء سجل
من الوسيط التخزيني ثم تتم عملية الاطلاع عليه وتحديثه في حال الضرورة ثم عملية إعادة تخزينه
بعد التحديث.
من أجل الوصول إلى عنصر بيانات محدد في قاعدة البيانات، يستخدم المرء نماذج معينة من عناصر
البيانات ضمن السجلات وهي ما يطلق عليها مفاتيح السجلات.
ومفاتيح عناصر البيانات هي عبارة عن التجهيزات التي تسمح بالتعرف إلى عناصر البيانات ضمن
قاعدة البيانات.
ومن أجل هذا الغرض يوجد هناك حقول معينة ضمن السجلات، كل حقل يعد مناسبًا للقيام بمثل هذا
الدور ضمن السجل يطلق عليه مفتاح.
إن الدور الذي يمكن أن يلعبه حقل ما ضمن الرابطة، لا يتعلق بطبيعة الحقل نفسه وإنما يتعلق بالنظام
نفسه الذي يتم تطوير قاعدة البيانات له.
يوجد العديد من أنواع المفاتيح التي يمكن التعرف عليها في جدول معين.
الجدول
هو عبارة عن مجموعة من السجلات التي لها نفس البنية ويوجد بينها ترابط منطقي.
وكلمة نفس البنية تعني هنا انه يمكن توصيف كل السجلات الموجودة في الملف من خلال نفس الحقول
الموجودة في السجل.
أما الترابط المنطقي فيعني أن كل السجلات التي توجد في الجدول تعبر عن عناصر لها نفس الطبيعة.
مجموعة من الجداول التي يوجد فيما بينها تابعية منطقية تشكل ما يدعى بقاعدة البيانات ، وكما أسلفنا
فإن عملية توصيف سجلات الجدول تتم من خلال تحديد أسماء ومواصفات الحقول.
إنشاء قاعدة البيانات
الإمكانية لإنشاء قاعدة بيانات فارغة، ثم يمكن إضافة الجداول والنماذج والتقارير وبقية Access يوفر
الكائنات الأخرى إليها، ويعد هذا الأسلوب أكثر مرونة في تصميم قاعدة البيانات ولكنه يتطلب تعريف
كل عنصر من عناصر قاعدة البيانات على حدة.
يعرض لمربع حوار يتضمن خيارات لإنشاء قاعدة بيانات جديدة فارغة أو Access عند تشغيل النظام
فارغة. نختار إنشاء الجداول بطريقة عرض التصميم. ACSESS صفحة بيانات
مثال 1
.Salessytems لنفرض أننا سوف نقوم بإنشاء قاعدة بيانات جيدة نطلق عليها ????
(create table in Design view) بعد النقر على خيار إنشاء الجدول بطريقة عرض التصميم ????
تظهر معنا شاشة تعريف الحقول المكونة للجدول، حيث نلاحظ وجود ثلاثة أعمدة رئيسة في
الأعلى لتعريف كل حقل من الحقول هي اسم الحقل ونموذج البيانات وتوصيف الحقل.
أما في أسفل الصفحة فتوجد خصائص الحقل(عام وبحث) والتي لا تصبح فعالة إلا بعد تعريف
الحقل.
خطوات تصميم الجداول
إنشاء الجداول مباشرة:
استخدام الخيار إنشاء قاعدة بيانات فارغة. ????
.Design View استخدام الخيار ????

إعدادات الحقل
يسمح بتعريف اسم آخر للحقل يظهر في جدول البيانات عندما تظهر الرابطة :Caption 1) التعليق
أو عند إعداد التقارير أو الأشكال مما يظهر حقول الرابطة Datasheet على شكل جدول بيانات
بشكل أكثر وضوحا وفهمًا.
يسمح هذا الخيار بتحديد قيمة افتراضية يتم إدخالها بشكل DataBase Management Systems 1efault Value 2) القيم الافتراضية
آلي في الحقل، ويمكن تغيير القيمة الافتراضية أثناء عمليات الإدخال

3) طول الحقل
المقبولة للرقم.
يسمح بتحديد شكل ظهور البيانات في الحقل. :Format 4) التنسيق
يمكن من تحديد فيما إذا كان سيتم استخدام الحقل لإنشاء ملف فهرسة بناء :Indexed 5) الفهرسة
على هذا الحقل أم لا، مما يساعد في عمليات الترتيب والبحث في هذا الملف بناء على ذلك الحقل.
ويمكن لكل جدول في قاعدة البيانات أن يتضمن 32 ملف مفهرس.
من بين الخيارات المتعلقة بالفهرسة خيار هل يمكن للحقل أن يتضمن نفس القيمة أكثر من مرة، في
أما إذا كنت متأكدًا أن الحقل لن يحتوي نفس .( Yes [Duplicates OK] ) مثل هذه الحالة يجب اختيار
.Yes [NO Duplicates] القيمة أكثر من مرة، فالخيار هو
هناك بعض نماذج البيانات التي ترغب بتحديد شكل إدخالها مثل :Input Mask 6) شكل الإدخال
1999 )، في مثل هذه الحالة عليك تحديد شكل الإدخال من خلال الخيار /6/ التاريخ على شكل ( 24
هذا.
عندما ترغب أن لا يسمح بترك حقل معين فارغ، عليك أن تحدد هذا :Required 7) مطلوب
.(Yes) الخيار ب
يسمح هذا الخيار ببناء قواعد وتعابير لاختبار الصحة :Validation Rule 8) قواعد التحقق
المنطقية للبيانات المدخلة ، التي سوف تخزن في الحقل ورفض الإدخالات ، التي تتعارض وهذه
القواعد. مثلا نريد أن نضع في ملف المخزون أن الرصيد لايجوز أم يكون اصغر من الصفر.
تستخدم لتحديد الرسالة التي يجب أن تظهر في حال كان :Validation Text 9) نص التحقق
الإدخال يتعارض مع قواعد التحقق المصاغة مع حقل معين.
هو حقل أو مجموعة حقول ضمن الجدول :Primary Key 10 ) تحديد المفتاح الرئيسي للجدول
تقوم بتعريف كل سجل مخزن في الجدول بشكل يميزه بشكل تام عن السجلات الأخرى ضمن
الجدول. يساعد تعريف المفتاح الرئيسي للجدول في ثلاث أمور هي:
يضمن أن أنه لا يوجد سجلان لهما نفس في الحقل أو الحقول المعرفة كمفتاح رئيسي. ????
على السجلات في جدول مرتبة بحسب المفتاح الرئيسي. Access يحافظ نظام ????
يسرع وجود المفتاح الرئيسي عملية المعالجة. ????
يتم تعريف المفتاح الرئيسي عبر:
تعليم اسم الحقل أو أسماء الحقول التي ترغب في أن تكون المفتاح الرئيسي.
ثم الخيار مفتاح رئيسي EDIT الضغط على رمز المفتاح في شريط الأدوات أو باستخدام الخيار تحرير
وبالتالي يظهر رمز المفتاح بجانب الحقل أو الحقول المذكورة. . Primary Key
كمفتاح رئيسي للجدول الأول. فيظهر رمز المفتاح بجانب اسم هذا (CustNr) وسوف نختار حقل
الحقل.
بعد تعريف الجدول وتحديد المفتاح الرئيسي نقوم بتخزين الجدول عبر الخيار(حفظ باسم) من القائمة
.(Customer) (ملف) وسوف نطلق على الجدول الأول جدول
إدخال البيانات إلى الجدول
يمكن البدء بإدخال البيانات إلى الجدول المصمم عبر القائمة عرض وذلك بتحويل طريقة العرض من
حيث يظهر الجدول (Datasheet Views) إلى عرض ورقة البيانات (Design Views) عرض التصميم
متضمنًا الحقول التي تم تعريفها.

إنشاء العلاقات بين الجداول
1) أهمية العلاقات بين الجداول
بعد أن قمت بإعداد جداول مختلفة لكل موضوع في قاعدة البيانات الخاصة بك، تحتاج إلى طريقة
عن كيفية تجميع هذه المعلومات معًا مرة أخرى. (Microsoft Access) لإخبار
الخطوة الأولى في هذه العملية هي تعريف العلاقات بين الجداول الخاصة بك. ????
بعد أن تقوم بذلك، يمكنك إنشاء استعلامات، نماذج وتقارير لعرض معلومات من عدة جداول في ????
آن واحد.على سبيل المثال عند رغبتنا بمعرفة اسم العميل الذي سدد الدفعة رقم 8 تحتاج إنشاء
.(Payment) وجدول الدفعات (Customer) علاقة بين جدول العملاء
إن التصميم المنطقي لجداول البيانات هو الذي يملي العلاقات بين الجداول، وفي قاعدة البيانات في
مثالنا توجد خمسة جداول يوجد فيما بينها علاقات منطقية تقوم على موضوع البيانات المخزنة في كل
جدول من هذه الجداول.
إن إنشاء العلاقات هي بمثابة تأسيس آلية يمكن من خلالها الربط بين الجداول يمكن من خلالها صنع
المعلومات.
لأحد الجداول مع حقل يعد بمثابة مفتاح (Primary Key) يتم إنشاء العلاقة عبر حقل المفتاح الرئيسي
في الجدول الثاني. ويعود السبب في استخدام المفتاح الرئيسي كعامل ربط بين (Foreign Key) أجنبي
الجدولين، لأن المفتاح الرئيسي يؤمن عدم تكرار السجلات داخل الجدول.
وذلك (CustNr) وفي مثالنا السابق يتم الربط بين جدولي العملاء والفواتير باستخدام الحقل رقم العميل
لتمييز سجلات الفواتير التي تخص عميل معين عن بقية سجلات الفواتير التي تخص العملاء الآخرين.
2) كيفية إنشاء العلاقة بين الجداول
عندما تقوم بإنشاء علاقة بين جداول، ليس من الضروري أن تحتوي الحقول المرتبطة على نفس
الأسماء.
ولكن، يجب أن يكون لدى الحقول المرتبطة نفس نموذج البيانات إلا إذا كان الحقل مفتاح رئيسي هو
حقل رقم تلقائي.
(Field Size) مع حقل (رقم) فقط إذا كانت الخاصية (AutoNumber) ( يمكنك مطابقة حقل (رقم تلقائي
لك ً لا من الحقول المتطابقة متشابها.
Field ) إذا كانت الخاصية (Number) و حقل (AutoNumber) على سبيل المثال، يمكنك مطابقة حقل
حتى إذا كان ك ً لا من الحقول المتطابقة هي حقول .(Long Integer) لك ً لا من الحقول هي (Size
.(Field Size) يجب أن يكونوا نفس إعدادات الخاصية ،(Number)
يتم تعريف العلاقات بين الجداول وفق الخطوات التالية:
قم بإغلاق أي جداول قمت بفتحها. لا يمكنك إنشاء علاقات أو تعديلها بين جداول مفتوحة. ????
للتبديل إلى إطار قاعدة بيانات. F اضغط 11 ????
.Tools علاقات" على شريط الأدوات (Relationships) انقر فوق ????
إذا لم تقم بتعريف أية علاقات في قاعدة بيانات بعد، يتم عرض مربع الحوار إظهار جدول ????
تلقائيًا. (Show Table)
إذا كنت بحاجة إلى إضافة الجداول التي تريد تضمينها في علاقة، في حين أن مربع الحوار ????
على (Show Table) ليس معروضًا، فانقر فوق إظهار جدول (Show Table) إظهار جدول
شريط الأدوات.
.(Show Table) انقر نقرًا مزدوجًا فوق أسماء الجداول التي تريد ربطها، ثم أغلق مربع الحوار ????
لإنشاء علاقة بين جدول ونفسه، قم بإضافة هذا الجدول مرتين.
اسحب الحقل الذي تريد ربطه من أحد الجداول إلى الحقل المرتبط في الجدول الآخر. ????
في معظم الحالات، عندما تقوم بسحب الحقل مفتاح رئيسي (المعروض بنص أسود عريض) من ????
أحد الجداول إلى حقل مماثل (غالبًا ما يحمل نفس الاسم) فإنه يسمى مفتاح أجنبي في الجدول
الآخر.
يتم عرض مربع الحوار تحرير علاقات اختبر أسماء الحقول المعروضة في العمودين للتأكد من ????
صحتهما. يمكنك تغييرهما عند الضرورة.
انقر فوق الزر إنشاء لإنشاء العلاقة. ????
كرر الخطوات من 5 إلى 8 لكل زوج من الجداول تريد ربطهما. ????
إذا كنت تريد حفظ التخطيط. سواء حفظت Access Microsoft عند إغلاق إطار العلاقات يسألك ????
التخطيط أم لا، فإن العلاقات التي تنشئها يتم حفظها في قاعدة البيانات.
فرض التكامل المرجعي في بناء العلاقات
يستخدم التكامل المرجعي لضمان صحة العلاقات بين السجلات في الجداول المرتبطة، وكذلك ضمان
عدم حذف المستخدم لبيانات مرتبطة أو تغييرها بطريق الخطأ. يمكنك إعداد التكامل المرجعي عند
تحقق الشروط التالية:
الحقل المطابق من الجدول الرئيسي هو حقل مفتاح رئيسي أو حقل مفهرس. ????
. الحقول المرتبطة لها نفس نموذج البيانات 1 ????
1 هناك استثنائيين، هما المذكورين في الفقرة السابقة تعريف العلاقات
إذا كانت الجداول جداول .Microsoft Access ينتمي كلا الجدولين إلى نفس قاعدة بيانات ????
ويجب عليك فتح قاعدة البيانات ،Microsoft Access مرتبطة، لابد أن تكون الجداول بتنسيق
التي تم تخزينهما فيها لإعداد التكامل المرجعي. لا يمكن فرض التكامل المرجعى للجداول
المرتبطة من قواعد بيانات لها تنسيقات أخرى.
يتم فرض التكامل المرجعي عند بناء العلاقات وفق الخطوات التالية:
.Tools من القائمة Relationships -1 نقل المؤشر إلى الخط الواصل بين جدولين في الخيار
.Edit Relation ships -2 الضغط على الجهة اليمنى من الفارة ثم نختار تحرير علاقة
.Enforce Referential Integrity -3 نقوم باختيار تمكين التكامل المرجعي
عند بناء التكامل المرجعي لابد من مراعاة القواعد التالية:
لا يمكن للمستخدم إدخال قيمة في الحقل مفتاح أجنبي للجدول المرتبط غير موجودة في المفتاح ????
في المفتاح الأجنبي، مع NULL الرئيسي للجدول الأساسي. ولكن، يمكنك إدخال قيمة خالية
التحديد أن السجلات غير مرتبطة. على سبيل المثال: لا يمكن إدخال فاتورة في جدول الفواتير
ووضع رقم العميل بدون أن يكون هذا الرقم موجودًا في جدول العملاء ولكن يمكن إدخال فاتورة
في حقل "رقم العميل" في جدول الفواتير. (Null إلى عميل غير محدد بواسطة إدخال قيمة (خالية
لا يمكنك حذف سجل من جدول رئيسي إذا تواجدت سجلات في جدول مرتبط. على سبيل ????
المثال،لا يمكنك حذف سجل من جدول العملاء، إذا كان هناك فواتير لهذا العميل في جدول
الفواتير.
لا يمكنك تغيير قيمة مفتاح أساسي في الجدول الأساسي، إذا كان لذلك السجل سجلات مرتبطة. ????
على سبيل المثال، لا يمكنك تغيير رقم العميل في جدول (العملاء) إذا كانت هناك فواتير معينة
إلى ذلك العميل في جدول (الفواتير).
إذا أراد المستخدم تطبيق هذه القواعد على إحدى العلاقات حدد خانة الاختيار (فرض التكامل
المرجعي) عند تعريف العلاقة.
استخدام التحديث المتتالي والحذف المتتالي:
يمكن تجاوز القيود التي يفرضها التكامل المرجعي على عمليات الحذف والتعديل مع المحافظة ????
تتالي -Cascade Update Related Fields) على التكامل المرجعي بواسطة تعيين خانتي
تتالي حذف السجلات - Cascade delete Related Records) تحديث الحقول المرتبطة) و
المرتبطة)، بحيث يتم السماح بعمليتي الحذف والتحديث التي عادة ما يتم منعها بواسطة قواعد
التكامل المرجعي. عند حذف سجلات أو تغيير قيم المفتاح الرئيسي في جدول أساسي، يجري
التغييرات المناسبة في الجداول المرتبطة للحفاظ على التكامل المرجعي. Microsoft Access
إذا قمت بتحديد خانة الاختيار (تتالي تحديث الحقول المرتبطة) عند تعريف علاقة، في أي وقت ????
تلقائيًا Microsoft Access تقوم فيه بتغيير المفتاح الأساسي لسجل في الجدول الأساسي، يتولى
تحديث المفتاح الأساسي إلى القيمة الجديدة في كافة السجلات المرتبطة. على سبيل المثال، عند
تغيير (رقم العميل) في جدول (العملاء)، يتم تلقائيًا تحديث حقل (رقم العميل) في جدول (الفواتير)
Microsoft Access لكل فاتورة عائدة لهذا العميل، حتى لا يتم أي خلل في هذه العلاقة. يتولى
تتالي التحديث دون عرض أية رسالة.
ملاحظة: إذا كان المفتاح الأساسي في الجدول الأساسي حقل ترقيم تلقائي، لن يكون لإعداد خانة
الاختيار (تتالي تحديث الحقول المرتبطة) أي تأثير، نظرًا لعدم إمكانية تغيير القيمة في حقل (ترقيم
تلقائي).
إذا قمت بتحديد خانة الاختيار (تتالي حذف السجلات المرتبطة) عند تعريف علاقة، في أي وقت ????
تلقائيًا السجلات المرتبطة Microsoft Access تحذف فيه سجلات في الجدول الأساسي، يحذف
في الجدول المرتبط. على سبيل المثال، عند حذف سجل عميل من جدول (العملاء)، يتم حذف
كافة فواتير العميل تلقائيًا من جدول (الفواتير) (يتضمن ذلك السجلات في جدول "أسطر الفاتورة"
المرتبط بسجلات "الفواتير").
عند حذف سجلات من نموذج وكانت خانة الاختيار (تتالي حذف السجلات المرتبطة) محددة،
باحتمال حذف السجلات المرتبطة أيضًا. ولكن، عند حذف سجلات Microsoft Access يحذرك
تلقائيًا السجلات في الجداول المرتبطة بدون Microsoft Access باستخدام الاستعلامات، يحذف
عرض تحذير.
ملاحظة: يمكنك إنشاء علاقات باستخدام استعلامات كما في حالة الجداول. ولكن لا يتم فرض التكامل
المرجعي مع الاستعلامات.




الاستعلامات: هي أدوات تحليل للبيانات المخزنة في قاعدة البيانات، تستخدم الاستعلامات لتلخيص
بيانات نموذج محدد من البيانات أو القيام بتعديلات على البيانات المخزنة في قاعدة البيانات مثل إضافة
سجل إلى قاعدة البيانات أو حذف سجل أو تحديث سجلات في جدول..الخ.
تستخدم الاستعلامات لعرض وتغيير وتحليل البيانات بطرق مختلفة، يمكنك أيضًا استخدام الاستعلامات
.Access كمصدر سجلات للنماذج والتقارير وصفحات بيانات
أو باستخدام لغة (Design View) يوجد هناك طريقان لإنشاء الاستعلامات إما بطريقة عرض التصميم
.SQL والمعروفة اختصارًا باسم (Structured Query Language) الاسترجاع البنيوية
اللغة الأكثر اعتمادًا في معظم تطبيقات قواعد البيانات، بحيث أنها SQL تعد لغة الاسترجاع البنيوية
أصبحت اللغة المعيارية في تصميم وبناء قواعد البيانات الترابطية.
مباشرة للتخاطب مع قواعد البيانات كما يمكن أن تستخدم ضمن التطبيقات SQL يمكن استخدام
في قدرتها على استرجاع معلومات كبيرة SQL المختلفة المعدة بإحدى لغات البرمجة العليا. وتكمن قوة
وبطريقة سهلة، وبأن المستخدم غير مضطر لأن يفهم الكيفية التي تتم بها هذه العملية .تتضمن لغة
على أوامر يمكن أن تصنف إلى: SQL
أوامر تعريف قواعد البيانات: ومن خلال هذه الأوامر يمكن تعريف الجداول والعلاقات ????
والجداول الافتراضية وأنواع المفاتيح المختلفة وطرق تنظيم الجداول من خلال تعريف
الفهارس وحذف الجداول وإعادة هيكلتها.
أوامر معالجة واسترجاع البيانات: ومن خلالها يمكن الحصول على معلومات من جدول ????
معين أو عدة جداول كما يمكن للمستخدم التعديل على البيانات المخزنة في الجداول.
.SQL الاستعلامات باستخدام لغة
إنشاء الاستعلام
.SQL هو إنشاء أحد الاستعلامات المذكورة أعلاه باستخدام عبارات SQL استعلام
المعينة: استعلام توحيد، واستعلام تمريري، واستعلام تعريف البيانات، SQL من أمثلة استعلامات
واستعلام فرعي.
وفق المراحل التالية: SQL يتم إنشاء الاستعلام في لغة
ننقل المؤشر من الجداول إلى الاستعلامات. ????
نختار إنشاء استعلام بطريقة عرض التصميم. ????
نقوم بإغلاق شاشة إظهار جدول ????
فتظهر معنا الشاشة التي تتيح لنا المجال لكتابة SQL ثم نذهب إلى القائمة عرض ونستخدم الخيار ????
الاستعلام المطلوب.
بعد كتابة الاستعلام نقوم بتشغيل الاستعلام باستخدام الخيار تشغيل من القائمة استعلام. ????
إذا كان الاستعلام خاليًا من الأخطاء نقوم بتخزينه تحت اسم معين. ????
ملاحظة: لا يجوز أن يكون اسم الاستعلام هو نفس اسم الجدول.
معالجة البيانات واسترجاعها
هناك مجموعة من التعليمات والأوامر التي تهدف إلى استرجاع البيانات من قاعدة البيانات وإجراء
بناء أربع أنواع من الاستعلامات هي Access عمليات المعالجة عليها. كما أنه يمكن في ظل النظام
التالية:
(Select Queries) استعلام التحديد ????
(Sub-Queries) الاستعلامات الفرعية ????
(Parameter Queries) استعلام المعلمات ????
(Action Queries) الاستعلامات الإجرائية ????
بالرغم من أنها الطريقة SQL وقد رأينا أن نستعرض كيفية تصميم الاستعلام باستخدام عبارات
الأصعب، لأنها تمنح القارئ فكرة عن مفهوم الاستعلامات وآلية عملها بشكل كامل، وكذلك لأن بعض
مثل استعلامات التوحيد والاستعلامات الفرعية. SQL الاستعلامات لا يمكن تصميميها إلا باستخدام
استعلام التحديد
استعلام التحديد هو الاستعلام الأكثر شيوعًا، فهو يسترد البيانات من جدول واحد أو أكثر ويعرض
النتائج في صفحة بيانات في المكان الذي يمكنك تحديث السجلات فيه مع بعض القيود.
يمكنك أيضًا استخدام استعلام تحديد لتجميع السجلات ولحساب المجموع، الأعداد، المعدلات، والأنواع
الأخرى من الحسابات والملخصات. يأخذ استعلام التحديد البنية الرئيسة التالية:
Select Fieldname1, Fieldname2,…
From Tablename;
يتبعها أسماء الحقول، التي نرغب بإظهارها في نتيجة Select حيث يبدأ استعلام التحديد دومًا بالعبارة
ويذكر بعدها اسم الجدول الذي From الاستعلام، يفصل بينها الفاصلة العادية، وبعد ذلك تأتي العبارة
سوف نحصل على المعلومات منه.

ملاحظة 1
يمكن الاستعاضة عن ذكر أسماء كل الحقول عند الرغبة في إظهار كل الحقول الموجودة في الجدول
فيصبح الاستعلام السابق على الشكل ،(Select) كما في المثال السابق بوضع الرمز نجمة بعد كلمة
التالي:
Select *
From Customer
Where City="Amman";

ملاحظة 2
بعد DISTINCT من أجل تجنب ظهور القيم المتكررة في نتائج الاستعلام عندئذ يجب استخدام
حيث يقوم التعبير بحذف المتكرر من البيانات في الجدول. SELECT
اكتب استعلام يبين قائمة بالمدن التي يوجد فيها عملاء. نص customer مثال: بالاعتماد على جدول
الاستعلام:
Select Distinct Customer.City
From Customer;

ملاحظة 3
أن يحتوي على 40 تعبيرًا كحد أقصى يربط بينها عوامل تشغيل منطقية، مثل WHERE بإمكان بند
.Or و And

العمليات الحسابية والوظائف التي يمكن استخدامها في الاستعلامات
هناك أنواع عديدة من العمليات الحسابية التي يمكنك إجراؤها في استعلام. فيمكنك على سبيل المثال،
حساب مجموع أو متوسط القيم في حقل واحد، أو ضرب القيم في حقلين، أو حساب التاريخ لمدة ثلاثة
أشهر من التاريخ الحالي.
عند عرض نتائج عملية حسابية في حقل، لا يتم تخزين النتائج فعليًا في الجدول المصدر، وبد ً لا من
تشغيل العملية الحسابية في كل مرة يتم فيها تشغيل الاستعلام حتى تكون Microsoft Access ذلك يعيد
النتائج مستندة دائمًا إلى أحدث البيانات الحالية في قاعدة البيانات. وبالتالي لا يمكنك تحديث النتائج
المحسوبة يدويًا.
لعرض نتائج عملية حسابية في حقل، يمكنك استخدام الدوال المعرفة مسبقًا التي يوفرها النظام
أو قم أنت بصياغة العمليات الحسابية التي يجب أن يجريها الاستعلام على ،Microsoft Access
البيانات.
قم باستخدام العمليات الحسابية المُعرفَّة مسبقًا، التي تسمى (الدوال المعرفة مسبقًا)، والتي تستخدم
لإجراء بعض الحسابات على الجداول مثل المجموع ، المتوسط الحسابي...الخ.
اسم الدالة الوظيفة التي تؤديها نماذج البيانات التي تتعامل معها
إجمالي" القيم في أحد الحقول. "رقم"، "تاريخ/وقت"، "عملة"، و"رقم تلقائي". " Sum
متوسط القيم في أحد الحقول. "رقم"، "تاريخ/وقت"، "عملة"، و"رقم تلقائي". Avg
أقل قيمة في أحد الحقول. "نص"، "رقم"، "تاريخ/وقت"، "عملة"، و"رقم تلقائي". Min
أكبر قيمة في أحد الحقول. "نص"، "رقم"، "تاريخ/وقت"، "عملة"، و"رقم تلقائي". Max
"تاريخ/وقت"، "عملة"، "رقم تلقائي"، "نعم/لا" ، و"كائن
OLE".
عدد القيم في حقل، وليس من
.(Null) ضمنها القيم الخالية
Count
"رقم"، "تاريخ/وقت"، "عملة"، و"رقم تلقائي".
الانحراف المعياري للقيم الموجودة
في أحد الحقول.
تتيح لك العملية الحسابية المخصصة إمكانية إنجاز العمليات الحسابية الرقمية، والتاريخية، والنصية
على كل سجل باستخدام البيانات من حقل واحد أو أكثر.
فيمكنك على سبيل المثال، باستخدام عملية حسابية مخ  صصة ضرب قيم حقل واحد في مجموعة مبالغ،
أو إيجاد الفرق بين تاريخين مخزنين في حقلين منفصلين، أو دمج قيم متعددة في حقل "نص"، أو إنشاء
استعلامات فرعية
استخدام العبارة
مع الدالات الحسابية من أجل حساب القيم في حقل معين بناء على GROUP BY يستخدم التعبير
معيار موجود في حقل آخر ويقوم بضم السجلات ذات القيم المماثلة في قائمة الحقول المحددة ضمن
سجل واحد.
في ،Count أو Sum مثل ،SQL ويتم إنشاء قيمة تلخيص لكل سجل، إذا قمت بتضمين دالة تجميع في
.SELECT عبارة
ملاحظة:
فارغة في عملياتها الحسابية. (Null) لن تتضمن دالات التجميع السجلات التي تتضمن قيم
عدد كافة السجلات بدون قيم خالية. Count على سبيل المثال، ُترجع دالة
توجد طريقة لعد القيم الخالية، إذ يمكنك تحويل القيم الخالية إلى صفر بحيث يتم إدراجها في العملية
الحسابية.
وسوف نستعرض إمكانية استخدام هذه الدوال المعرفة وكيفية صيغة التعبير الحسابي من خلال
مجموعة من الأمثلة سوف ترد لاحقًا عند استعراض التعامل مع بيانات أكثر من جدول.
عوامل التشغيل
هناك بعض العبارات التي تستخدم مع استعلامات التحديد والتي تقوم بأداء وظائف محددة.
سوف نستعرض في إطار هذا الفصل أهم هذه العبارات ووظائفها وكيفية استخدامها، وهي:
.(Between...And) عامل التشغيل ????
.(Like) عامل التشغيل ????
.(In) عامل التشغيل ????
(Between...And) عامل التشغيل
يحدد ما إذا كانت قيمة التعبير تقع ضمن نطاق محدد من القيم.
(Like) عامل التشغيل
.SQL يقارن سلسلة أحرف بعامل بحث في تعبير
يتألف بناء جملة عامل التشغيل
الجزء الوصف
Where مستخدم في بند SQL تعبير expression
بالمقابل معه. expression سلسلة أو ثابت حرفي لسلسلة أحرف تتم مقارنة pattern
للبحث عن قيم في حقل يطابق عامل البحث الذي تحدده. بالنسبة Like يمكنك استخدام عامل التشغيل
أو يمكنك استخدام أحرف البدل ،(Like “Smith” ، يمكنك تحديد القيمة الكاملة، (مث ً لا ،pattern إلى
.(Like “Sm*” ، للبحث عن نطاق من القيم (مث ً لا
(In) عامل التشغيل
يحدد ما إذا كانت قيمة التعبير مساوية لأي قيمة من القيم المتعددة في قائمة محددة.
الاستعلامات الفرعية
داخل استعلام تحديد أو أي استعلام إجرائي آخر، مما Select يتكون الاستعلام الفرعي من عبارة
يؤدي أن نتائج الاستعلام الرئيسي تتعلق بنتيجة الاستعلام الفرعي، أي أنه يتم تنفيذ الاستعلام الفرعي،
ثم ينفذ الاستعلام الرئيسي.
الاستعلام الفرعي المتعدد المستويات
يمكن أن يكون الاستعلام الفرعي متعدد المستويات بحيث يتم العودة إلى عدة جداول من أجل الوصول
إلى المعلومات المطلوبة.
EXISTS الاسترجاع الفرعي باستخدام الدالة
إذا عاد أي ناتج في الاستعلام الفرعي التابع لها TRUE هي دالة منطقية تأخذ القيمة EXISTS الدالة
إذا لم يكن هناك ناتج في الاستعلام الفرعي. FALSE وتأخذ القيمة
استعلام المعلمات
استعلام المعلمات هو استعلام يعرض عند تشغيله مربع الحوار الخاص به، ليطالب المستخدم
بمعلومات تعامل على أنها معايير لاسترداد سجلات أو قيمة تريد إدراجها في حقل.
يمكنك تصميم الاستعلام ليطالبك بأكثر من معلومة.
الاستعلامات الإجرائية
الاستعلام الإجرائي هو استعلام يُجري تغييرات على العديد من السجلات في عملية واحدة فقط. توجد
أربعة أنواع من الاستعلامات الإجرائية هي استعلامات:
الحذف. ????
الإضافة. ????
التحديث. ????
استعلام الحذف
يحذف مجموعة من السجلات من جدول واحد أو أكثر.
على سبيل المثال، يمكنك استخدام استعلام حذف لإزالة منتجات توقف إنتاجها أو لا توجد لها طلبات.
بواسطة استعلامات الحذف، يمكنك دائمًا حذف سجلات بأكملها، وليس فقط حقول محددة داخل
سجلات.
استعلام التحديث
يُجري تغييرات على مجموعة من السجلات في جدول واحد أو أكثر.
على سبيل المثال، يمكنك زيادة الأسعار بنسبة 10 بالمائة لكافة منتجات الشركة. باستخدام استعلام
تحديث، يمكنك تغيير البيانات في جداول موجودة.
DDL لغة تعريف البيانات
ومن أهم هذه الأوامر، SQL يتم تعريف قواعد البيانات من خلال مجموعة الأوامر التي توفرها لغة
الأوامر التالية:
.CREATE TABLE : إنشاء الجداول وتعريفها ????
.Drop Table : حذف جدول ????
.CREATE VIEW : إنشاء الجداول الافتراضية
إنشاء الجداول وتعريفها
تأخذ الصيغة العامة التالية: Create Table تعليمة إنشاء الجدول وهي
ملاحظات:
تستخدم هذه التعليمة من أجل تعريف جدول جديد وحقوله والقيود على الحقول ويتم استخدام العبارة
لتحديد الحقول التي لايجوز أن تتضمن قيمًا فارغة. Not Null
القيود تضع محددات متنوعة على حقل ما ويمكن أن تستخدم لتعريف المفتاح الرئيس للجدول.
يمكن أن تستخدم فقط مع الحقول النصية والملاحظة من أجل WITH COMPRESSION الخاصية
لتخزين كل رمز أي تخصيص 2 بايت لتخزين كل رمز. UNICODE استخدام صيغة
حذف جدول
تعليمة لحذف بعض جداول قاعدة البيانات حيث يمكن حذف جدول SQL من الأوامر التي تتيحها لغة
من قاعدة البيانات ضمن الصيغة العامة التالية:
DROP TABLE table-name;
إنشاء الجداول الافتراضية
هو عبارة عن جدول وهمي حيث أنه لا يحتوي على بيانات بل مسميات View الجدول الافتراضي
للدلالة على البيانات وخطة استرجاع تقود إلى الجداول الأصلية التي تشكل مصادر البيانات، وتوفر
الجداول الافتراضية فوائد كثيرة من أهمها:
إعادة هيكلية الجداول إذا لزم الأمر من دون أن يؤدي ذلك إلى تغيير الجداول الأصلية. ????
توفير قدر من الأمن والسرية لأنها لا تتضمن بيانات فعلية فيتم عرضها على المستخدمين ????
كبيانات مسترجعة من الجداول من دون أن يتمكن المستخدم من تعديل البيانات أو حذفها.
بالطريقة المرئية. Access 2 والذي تم إنشاؤه في الفصل الثالث: إنشاء الجداول في نظام
توفر الجداول الافتراضية وسيلة سهلة لتغيير مسميات لتغيير مسميات الأعمدة بصورة ????
افتراضية وليست حقيقة مما يسهل على المستخدمين فهم قاعدة البيانات حسب البيئة التي
يعملون بها.
توفر الجداول الافتراضية وسيلة لتحقيق التجانس والتكامل بين قواعد البيانات غير ????
المتجانسة لأننا من خلالها نستطيع إعادة تصميم وتغيير المسميات لتحقيق نوع من التجانس
في الأسماء المختلفة.
ملاحظات:
التي تستخدم في تعريف الجداول الافتراضية لا يمكن أن تستخدم كتعليمة select إن تعليمة ????
.Select ..into
التي تستخدم في تعريف الجداول الافتراضية لا يمكن أن تتضمن أي معلمة. select تعليمة ????
اسم الجدول الافتراضي يجب أن يكون غير اسم الجداول الأصلية.