ا
الفصل الثانى
تصميم قاعدة البيانات
------------------------------
* خطوات تصميم قاعدة البيانات:
------------------------------
1- تحديد الغرض من قواعد البيانات :
يدلك الغرض من قواعد البيانات على المعلومات التي ستحتاجها منها يمكنك تحديد الموضوعات التي تحتاجها لحفظ حقائق عنها ( الجداول ) والحقائق المراد حفظها عن كل موضوع ( الحقول بداخل الجداول ) وفي سبيل تحديد الغرض من أنشاء قاعدة البيانات يمكنك عمل الآتي :-
أ- أن تتحدث مع المستخدمين المرتقبين لقواعد البيانات .
ب- أن تشاور الأخرين حول نوعية الاسئله التي تود أن تجيب عنها قاعدة البيانات .
ج- أن تضع تخطيطات للتقارير المراد إنتاجها .
د- أن تجمع النماذج المستخدمة بالفعل في تسجيل البيانات .
وتستعين بكل هذه البيانات في الخطوات التالية للتصميم .
مثال : متابعة حركة المبيعات والمخزون
لنفرض أن شركة ( خيرات الله ) للاستيراد والتصدير التي تسوق المواد الغذائية الفاخرة فى جميع أنحاء العالم ، تزمع إنشاء قاعدة بيانات تمكنها من متابعة بيانات مبيعات مخزون الشركة .
إبدأ بكتابة قائمة الأسئلة التي يجب أن تجيب عليها قاعدة البيانات . مثل:
1- كم بلغ حجم المبيعات من منتجاتنا المتميزة في الشهر الماضي ؟
2- أين يقطن أفضل عملاؤنا؟
3- من هو مورد المنتج الأكثر مبيعاً ؟
يمكنك بعد ذلك جمع كل النماذج والتقارير التي تحتوى على المعلومات المزمع أن تكون قاعدة البيانات قادرة على إصدارها، مع ملاحظة أن الشركة تستخدم حالياً تقرير اً مطبوعاً لمتابعة المنتجات التي تم طلبها ونموذج طلبيات لتسجيل الطلبيات الجديدة. يوضح الشكل التالي هاتين الوثيقتين :
تحتاج شركة خيرت الله أيضاً طباعة عناوين المراسلات البريدية للعملاء والموظفين والموردين .
11- تحديد الجداول اللازمة :
يتضمن نموذج الطلبيات وتقرير متابعة المنتجات معلومات عن الموضوعات الأتيه :
1- العملاء .
2- الموردين .
3- المنتجات .
4- الطلبيات .
وتستطيع من القائمة السابقه الوصول إلى تصور مبدئي حول جداول قواعد البيانات وبعض الحقول في كل جدول
12- تحديد الحقول اللازمة :
لتحديد الحقول داخل كل جدول ، يجب أن تقرر أولاً ماذا تريد أن تعرف عن الأفراد أو الأشياء أو الأحداث المسجلة بالجدول.
* لمحات إرشادية لتحديد الحقول :
أ- لا تتضمن بيانات محسوبة أو مستنتجة .
ب- ضمن كل المعلومات التي تحتاجها .
ج- تخزين المعلومات حسب أصغر جزء منطقي ( أسم المنتج / فئته / وصفه )
* حقول المفتاح الأساسي:
أ- لا يسمح بوجود قيما متكررة أو خاليه في حقل المفتاح الأساسي .
ب- قد تستخدم القيمة الموجودة في حقل المفتاح الأساسي للبحث عن السجلات لذلك يراعى ألا يحتوى على عدد كبير من الأرقام أو الأحرف .
ج- يؤثر حجم المفتاح الأساسي على سرعة العمليات في قاعدة البيانات .
13-تحديد العلاقات :
يوجد ثلاثة أنواع من العلاقات بين الجداول:
أ- إنشاء علاقة إرتباط رأس بأطراف(One-to-Many):
فى هذه العلاقة يقابل السجل الواحد في الجدول " أ " عدة سجلات مطابقة في حقل معين في الجدول " ب " ويطابق فى حقل معين أي سجل في الجدول " ب " سجلا واحدا فقط فى الجدول " أ
ب- إنشاء علاقة ارتباط أطراف بأطراف (Many-to-Many):
في هذه العلاقة يقابل السجل الواحد في الجدول " أ " عدة سجلات في الجدول "ب " ويقابل السجل الواحد في الجدول "ب" عدة سجلات في الجدول " أ ".
ج- إنشاء علاقة رأس برأس (One-to-One):
في هذه العلاقة لا يقابل أي سجل في جدول " أ " أكثر من سجل واحد في جدول " ب " ، ولا يقابل أي سجل فى جدول " ب " أكثر من سجل واحد فى جدول " أ "
كان من الممكن إضافة كل حقول جدول (لاعبي الكرة ) إلى جدول ( الموظفين ) ولكن الغرض من جدول ( لاعبي الكره ) هو متابعة حدث واحد ولن نحتاجه بعد انتهاء الحدث . فضلاً عن ذلك فأن الموظفين ليسوا كلهم من لاعبي الكره وبالتالي فأن وجود هذه الحقول داخل جدول الموظفين سيجعل عدد الحقول الخالية كبيراً. لهذه الأسباب فأنه من المنطقي إنشاء جدول مستقل .
14- تنقيح تصميم قواعد البيانات :
تأكد من أنك تستطيع استخدام قاعدة البيانات للحصول على الإجابات التي تريدها. ثم ضع تخطيطا مبدئياً للنماذج والتقارير وتأكد من أنها ستظهر البيانات المتوقعة منها ثم أبحث عن أي تكرار غير ضروري للبيانات وتخلص منها.
------------------------------------
منقول من دروس القوات المسلحة
-------------------------------------