المساعد الشخصي الرقمي

مشاهدة النسخة كاملة : كيف تصمم قواعد بيانات بطريقة سليمة


سعد العطيوي
2008-05-01, 01:19
يعتبر تصميم برامج قواعد البيانات عملية مخططة ومدروسة وليست عملية عشوائية خلط جداول واستعلامات

وتشكيل برنامج متهالك ينهار مع أول هزة تصيبه

اذا كيف نبني برنامج قواعد بيانات متماسك ومتين يوفر كل الشروط النموذجية للبرنامج ويليق بك كمبرمج

هناك أخطاء يرتكبها المبرمجون ا و يتغاضون عنها بحكم ان الأمور تسلك على البركة

والمهم المادة

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

لذلك يجب ان تكون مصممه بشكل سليم من الصفر حتى النهاية

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

وغالب ماتكون الاخطاء في تصميم الجدول وهي زبدة البرنامج والمحرك والتى قد يصعب اصلاحها بعد اكمال البرنامج

اذا العمل يكون من الاساس عليها

فقد يعطي البرنامج نتائج مغلوطة وقد يكرر بيانات غير مطلوب تكرارها و يمسح البيانات او قد ينهار البرنامج

ولايمكن الاصلاح مما يترتب علية

ان يكون برنامج سئ السمعة

ان يكون برنامجك عديم الفائدة و من اول البرمج التى تزال من جهاز المستخدم

ان يطلق المسخدم عليك النار بين عينك خاصة اذا فقد بيانات مهمة

ان يشتمك المستخدم عند مرور اسم برنامج على مسامعه

اذا كيف أتجنب هذا و أقوم بتصميم برنامج متماسك أكثر من سور الصين العظيم

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



الخطاء الأول

تصميم الحقول بشكل مركب

أو ما نسميه تفكيك البيانات إلى بينات اصغر وهذا الهدف من قواعد البيانات العلائقية حاول تفكيك القيم الى اقصي حد ممكن

نضرب مثل

حقل الاسم مثل يمكن تفكيكه الى أربع حقول

الاسم

اسم الاب

الجد

العائلة
>وجمع ذلك في استعلام

يعطي هذا سهولة في عملية الفرز

خذ مثل العنوان من الخطاء الشائع حصر جميع بيانات العنوان في حقل واحد

المنطقة المدينة صندوق البريد الحي



تخيل اخي أي اسهل في الفرز السابق

ام تفكيك كل نوع في حقل المنطقة في حقل والمدينة في حقل والحي في حقل اكيد الفرز والتحكم اسهل في الثاني بسب التعامل مع الاول كحقل واحد يصعب فرزة

الخلاصة

قم بتفكيك الحقول التي تحوي اكثر من قيمة الى حقول منفصلة

يمكن جمعها في استعلام

يتبع..............

tarek100
2008-05-01, 01:25
شكراا على المعلومات القيمة
tareek:1:

milou.88
2008-05-01, 13:13
مشكوووووووووووووووووووووووووور

سعد العطيوي
2008-05-01, 22:58
الخطاء الثالث

استعمال أنواع البيانات بشكل غير صحيح

من الخطاء استعمال أنواع البيانات بشكل غير صحيح


نوع البيانات

الاستخدام

الحجم

نص( (****)

بيانات أبجدية ورقمية يمكن ان يخزن

حروف وارقام

يصل الى 255 حرف

رقم( (Number

بيانات رقمية فقط

1 – 16 بايت

ترقيم تلقائي( (AutoNumber

قيمة يولدها الاكسس لكل سجل جديد



4 بايت 16

عملة (currerncy)

بيانات مالية 4 منازل عشرية

8 بايت

نعم/لا(yes/no)

بيانات بوليا نية صفر للخطاء و (-1) للصح

1بت

تاريخ/وقت(date/time)

بينات تاريخ ووقت

8 بت

كائنOLE ( OLE Object)

صور ورسوم بيانية وبرامج تعتمد على ويندوز مثل برامج الفيديو

2 جيجا بايت

مذكرة(Memo)

بيانات رقمية وحرفية جمل وفقرات

يصل الي 1 جيجابايت

ارتباط تشعبي (Hyperlink)

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

يصل الى 1 جيجابايت



















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



فالبيانات الحرفية يجب اختيار نص حيث ممكن ان تشمل البيانات حروف وأرقام

حيث ان هذا الحقل مناسب لحقل صندوق بريد مثلا او بريد الالكتروني

ولكن سئ جدا لرقم هاتف حيث رقم الهاتف يحوي ارقام فقط حيث سوف تكون عرضه للإدخالات الخاطئة كن يدخل المستخدم حرف في حقل الهاتف

عن طريق الخطاء مما سوف ينتج عن خطاء في البيانات المدخلة

خذ مثلا تحديد حقل مثل يستخدم في تخزين العمر

عند استخدم نوع الحقل نص فسوف يكون هناك صعوبة في اجراء العمليات الحسابية علية بعتبار ان البيانات المدخل حرفية فهل يمكن إجراء عملية جمع على حروف اكيد لا

اذا يجب انتقاء انواع البيانات بشكل دقيق جدا جدا كذلك نجد اهمية في تحديد التحكم في طول الحقل حجم الحقل

مثلا في تحديد حقل يقوم بتخزين العمر من نوع رقم

وحددنا طول الحق بربع ارقام فهل هل هذا منطقي طبعا لا هل هناك شخص عمرة اكبر من اربع ارقام أي اكثر 999 سنة عمر سدنا نوح علية السلام على اعتبار ان هناك من قد يصل الى 100سنة فيجب تحديد القيمة هل كذلك تحديد المنازل العشرية فهل سوف يتم عرض العمر صافي ام مع عرض الشهر
هل نختارعدد صحيح ام عددصحيح طويل

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

اذا ممكن ان نعتبر قاعدة البيانات عبارة عن حاوية او صندوق يتم وضع صناديق صغير ة فية حيث عدم رص هذا الصنديق وتوزيعها بطريقة صحيحة سوف يؤدي الى عدم الاستفادة من المساحة المتاحة

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

فكن دقيق في اختيار نوع البيانات لكل حقل وحجم الحقل

اذا

اسل نفسك مالهدف من هذا الحقل وما نوع البيانات المناسب وماذا سوف يدخل ويخزن فية

هل حجم الحقل مناسب هل سوف يصل إلى هذا الحد او هل القيمة محددة بشرط او لا
مثلا برنامج لمركز شباب يستقبل عملاء من سن 15 عام الى 25 عام اذا هذا شرط بحيث يتم تحديد طول الحقل للعمر برقمين فقط

الخلاصة ان انتقاء نوع البيانات عملية شديدة الدقة يعتمد علية بشكل أساسي

امير الجود
2008-10-19, 01:52
مشكور و بارك الله فيك

سوفي ساك
2008-10-19, 16:13
شكرا اخي ...... الموضوع يحتاج الى وقت و مجهود كبير ...... الله يعينك