الوهاج2008
26-01-2008, 11:32 PM
http://mfft2002.jeeran.com/bism.gif
الحمدالله رب العالمين الرحمن الرحيم الحمدلله حمدا حمدا والشكر له شكرا شكرا والصلاة على افضل خلق الله نور البشرية محمد بن عبدالله عليه الصلاة والسلام .
اعضاء وزوار منتدى منتديات خط الطيران
السلام عليكم ورحمة الله وبركاته ... وبعد
اخوتي الكرام : اذا قرأت أو سمعت جملة قاعدة بيانات او بناء قاعدة بيانات فماذا يخطر في بالك ؟
الجواب يخطر في بالك الاشياء التالية
قواعد بيانات Microsoft Access
Microsoft SQL Server
Oracle قسم قواعد البيانات أوراكل
قواعد بيانات MySQL
قواعد البيانات Visual FoxPro
سوف استطرق واوضح قواعد بيانات Microsoft Access
ولا اخفاكم استفدت من التجربه من خلال تصميمي لبرنامج خاص بنا في عملنا ولقى اعجاب الكثيرين
فا احببت ان انقل لكم التجربه هنا اذا سمحت لي طبعا
اولا معلومات عن قاعدة البيانات ولا تركز على الكلام التالي كثيرا فالاتي اسهل وامتع لدرجة التصميم ولكن كا مقدمة في بناء القاعدة احببت ان اطرحها بين ايديكم وسوف ادعم الموضوع التالي بالامثلة إن شاء الله طبعا لمن اراد ان يستفيد من خصائص البرنامج كما استفدت انا
- الجدول الأب والجدول الابن :
فالقاعدة من خلال هذا المصطلح تقول : كل ابن لابد أن يكون له أب .. هذه سنة الحياة .. وفي سنة قواعد البيانات : لابد أن يوجد لكل ابنٍ أبٌ ينتسب إليه الابن .. بمعنى : لتكامل قواعد البيانات لابد أن يكون لكل سجل في الجدول الفرعي (الابن) سجل في الجدول الرئيسي (الأب) .. فهذه قاعدة مهمة جداً لأنه من الخلل الكبير في بناء قواعد البيانات أن يوجد أبناء لا آباء لها فوجودها سيكون مربكاً للغاية وسوف تحمل قواعد البيانات عبأً هي في غنية عنه .. قد يوجد الأب بلا أبناء ولا يشكل خطراً على البيانات ولكن لا يمكن السماح بوجود أبناء بلا آباء . وتظهر فائدة هذه القاعدة في معرفة الجداول التي لابد من فرض التكامل المرجعي في علاقاتها مع بعض .. لأنه قد توجد علاقات جداول مع بعضها ولكن دون فرض التكامل المرجعي لأنه حينها لا يهمنا وجود الابن دون أب في هذا الوقت .
مثال ذلك جدول بيانات صاحب الهاتف يعتبر أباً لجدول أرقام الهواتف فقد يوجد لشخص ما عدة أرقام .. فهنا قد يوجد أب لم يسجل له أرقام هواتف .. ولكن لن نسمح بوجود أرقام صالحة للاتصال دون صاحب لها .
2- الجدول التابع والجدول المتبوع(المستقل) :
القاعدة هنا تقول : كل جدول يستند في وجوده (وجود سجلاته) إلى جدول آخر يسمى تابعاً .. وكل جدول لا يستند في وجوده (وجود سجلاته) إلى جدول آخر يسمى متبوعاً أي غيره يتبعه (مستقلاً) .. وتظهر فائدة هذه القاعدة في معرفة من هو الأب ومن هو الابن من الجدولين لنبني عليها العلاقات واحد لكثير .
3- توحيد الجداول :
لابد من التخطيط الجيد وإعطاء نفسك مهلة كافية للتخطيط لقاعدة البيانات لكي تؤدي ما هو مطلوب منها بكل جدارة بالإضافة لإمكانية تطويرها وصيانتها فيما بعد فكما أن العقل السليم في الجسم السليم فكذلك هنا فإنا نقول القاعدة السليمة في البناء السليم .. فمن خلال البناء السليم نستطيع منع حدوث الكوارث والزحامات والبيانات المهدرة .. لذا يجب علينا توحيد الجداول بمعنى أنه يجب تحديد هدف كل جدول فعند انبثاق فكرة القاعدة تكون المعلومات كثيرة جداً يجمعها جدول واحد في الذهن فنقوم بتوحيدها وتفصيلها بوضع كل بيانات تخص موضوعاً معيناً في مجموعة واحدة (جدول واحد) .. مثال ذلك فكرة بناء قاعدة (مكتبة) فهناك البيانات التالية :
بيانات الكتاب
بيانات الناشرين
بيانات المؤلفين .. الخ
فنقوم بتفصيلها كالتالي :
فجدول بيانات الكتاب يضم الحقول التالية : اسم الكتاب ، تاريخ الطبع ، عدد المجلدات ، سعر الشراء .. الخ
وجدول بيانات الناشرين يضم الحقول التالية : اسم الناشر ، المدينة ، البلد ، الهاتف ، صندوق البريد .. الخ
وجدول بيانات المؤلفين يضم الحقول التالية : اسم المؤلف ، كنيته .. الخ
فنلاحظ أنا قمنا بتوحيد وتفصيل البيانات ووضع كل بيانات مترابطة في جدول واحد مما يعني أنه لن تضيع بيانات ولن تهدر مساحات من القرص .
4- المفتاح الأساسي والمفتاح الفرعي :
كما مر معك فإن حقل المفتاح الأساسي لا يمكن أن تتكرر قيمه بينما يمكن أن تتكرر قيم حقل المفتاح الفرعي المرتبط به .. فالجدول الأب هو من سيكون لديه حقل المفتاح الأساسي أما الجدول الابن فهو الذي لديه المفتاح الفرعي .
5- التكامل المرجعي :
يحتم فرض التكامل المرجعي على العلاقة بين جدولين على ضمان تطابق المعلومات في الجدولين ( الرئيسي والفرعي ).. فمن خلاله لن يسمح نظام قواعد البيانات بإدراج سجل في الجدول الفرعي (الابن) ما لم يكن له سجل سابق في الجدول الرئيسي (الأب) .. وحين إضافة ابن بلا أب ستخرج رسالة خطأ وتمنعك من إضافة السجل الابن . ويشتمل التكامل المرجعي على شيئين وهما :
1- تتالي التحديث :
وتعني أنه عند تغيير قيمة المفتاح الأساسي في الجدول الأب فإن التغيير سيسري إلى أبناءه في الجدول الابن وسيأخذون القيمة الجديدة لضمان التحاقهم بأبيهم .
2- تتالي الحذف :
وتعني أنه عند حذف أب من جدول الأب سيحذف معه أبناؤه في جدول الابن لكي لا يترك أبناء بلا أب لهم . لكن يمكنك حذف ابن من جدول الابن ما لم يكن هذا الابن له أبناء لأنه قد تتسلسل القاعدة إلى آباء وأبناء فقد يكون هناك أب له ابن وهذا الابن يكون أباً لأبناء .. وهكذا فلا يمكن حذف هذا الابن إلا بعد حذف أبناءه ولو اخترت تتالي الحذف في علاقاتها كله مع بعض سيتم حذف الأب والابن وأبناء الابن .. الخ .
هناك توجيهات تخصك كمطور قواعد بيانات منها :
1- تجنب الحروف العربية في تسمية كائنات قاعدة البيانات واستخدم الحروف الإنجليزية عوضا ًعنها بدءاً من اسم القاعدة إلى أسماء الجداول وأسماء النماذج والتقارير والاستعلامات والماكروا والوحدات النمطية حتى تتجنب مشقة الكتابة في محرر فيجول بيسك عند كتابة الأكواد .
2- ابتعد عن تسمية الكائنات بأسماء محجوزة لدى نظام قاعدة البيانات فمثلاً لا تسم الجدول باسم Table أو Tables أو النماذج باسم Form أو Forms كذلك Report للتقارير ، User وكل الكلمات والعبارات المحجوزة من قبل نظام قواعد البيانات حتى لا تقع في مشاكل أنت في غنى عنها .
3- اختر الأسماء كما تفهمها أنت والتي تدل على ما يراد منها .
4- بعد أن تنجح في كتابة كود وتعتمده اكتب تعليقاً يوضح عمله .
5- احتفظ بنسخ من قاعدة البيانات حتى لا يذهب جهدك سدى .
غدا بأذن الله نبدأ بتصميم برنامج بسيط جدا من خلاله نبدأ تعلم بناء قاعدة بيانات
إلى ذلك الحين اترككم في امان الله
الحمدالله رب العالمين الرحمن الرحيم الحمدلله حمدا حمدا والشكر له شكرا شكرا والصلاة على افضل خلق الله نور البشرية محمد بن عبدالله عليه الصلاة والسلام .
اعضاء وزوار منتدى منتديات خط الطيران
السلام عليكم ورحمة الله وبركاته ... وبعد
اخوتي الكرام : اذا قرأت أو سمعت جملة قاعدة بيانات او بناء قاعدة بيانات فماذا يخطر في بالك ؟
الجواب يخطر في بالك الاشياء التالية
قواعد بيانات Microsoft Access
Microsoft SQL Server
Oracle قسم قواعد البيانات أوراكل
قواعد بيانات MySQL
قواعد البيانات Visual FoxPro
سوف استطرق واوضح قواعد بيانات Microsoft Access
ولا اخفاكم استفدت من التجربه من خلال تصميمي لبرنامج خاص بنا في عملنا ولقى اعجاب الكثيرين
فا احببت ان انقل لكم التجربه هنا اذا سمحت لي طبعا
اولا معلومات عن قاعدة البيانات ولا تركز على الكلام التالي كثيرا فالاتي اسهل وامتع لدرجة التصميم ولكن كا مقدمة في بناء القاعدة احببت ان اطرحها بين ايديكم وسوف ادعم الموضوع التالي بالامثلة إن شاء الله طبعا لمن اراد ان يستفيد من خصائص البرنامج كما استفدت انا
- الجدول الأب والجدول الابن :
فالقاعدة من خلال هذا المصطلح تقول : كل ابن لابد أن يكون له أب .. هذه سنة الحياة .. وفي سنة قواعد البيانات : لابد أن يوجد لكل ابنٍ أبٌ ينتسب إليه الابن .. بمعنى : لتكامل قواعد البيانات لابد أن يكون لكل سجل في الجدول الفرعي (الابن) سجل في الجدول الرئيسي (الأب) .. فهذه قاعدة مهمة جداً لأنه من الخلل الكبير في بناء قواعد البيانات أن يوجد أبناء لا آباء لها فوجودها سيكون مربكاً للغاية وسوف تحمل قواعد البيانات عبأً هي في غنية عنه .. قد يوجد الأب بلا أبناء ولا يشكل خطراً على البيانات ولكن لا يمكن السماح بوجود أبناء بلا آباء . وتظهر فائدة هذه القاعدة في معرفة الجداول التي لابد من فرض التكامل المرجعي في علاقاتها مع بعض .. لأنه قد توجد علاقات جداول مع بعضها ولكن دون فرض التكامل المرجعي لأنه حينها لا يهمنا وجود الابن دون أب في هذا الوقت .
مثال ذلك جدول بيانات صاحب الهاتف يعتبر أباً لجدول أرقام الهواتف فقد يوجد لشخص ما عدة أرقام .. فهنا قد يوجد أب لم يسجل له أرقام هواتف .. ولكن لن نسمح بوجود أرقام صالحة للاتصال دون صاحب لها .
2- الجدول التابع والجدول المتبوع(المستقل) :
القاعدة هنا تقول : كل جدول يستند في وجوده (وجود سجلاته) إلى جدول آخر يسمى تابعاً .. وكل جدول لا يستند في وجوده (وجود سجلاته) إلى جدول آخر يسمى متبوعاً أي غيره يتبعه (مستقلاً) .. وتظهر فائدة هذه القاعدة في معرفة من هو الأب ومن هو الابن من الجدولين لنبني عليها العلاقات واحد لكثير .
3- توحيد الجداول :
لابد من التخطيط الجيد وإعطاء نفسك مهلة كافية للتخطيط لقاعدة البيانات لكي تؤدي ما هو مطلوب منها بكل جدارة بالإضافة لإمكانية تطويرها وصيانتها فيما بعد فكما أن العقل السليم في الجسم السليم فكذلك هنا فإنا نقول القاعدة السليمة في البناء السليم .. فمن خلال البناء السليم نستطيع منع حدوث الكوارث والزحامات والبيانات المهدرة .. لذا يجب علينا توحيد الجداول بمعنى أنه يجب تحديد هدف كل جدول فعند انبثاق فكرة القاعدة تكون المعلومات كثيرة جداً يجمعها جدول واحد في الذهن فنقوم بتوحيدها وتفصيلها بوضع كل بيانات تخص موضوعاً معيناً في مجموعة واحدة (جدول واحد) .. مثال ذلك فكرة بناء قاعدة (مكتبة) فهناك البيانات التالية :
بيانات الكتاب
بيانات الناشرين
بيانات المؤلفين .. الخ
فنقوم بتفصيلها كالتالي :
فجدول بيانات الكتاب يضم الحقول التالية : اسم الكتاب ، تاريخ الطبع ، عدد المجلدات ، سعر الشراء .. الخ
وجدول بيانات الناشرين يضم الحقول التالية : اسم الناشر ، المدينة ، البلد ، الهاتف ، صندوق البريد .. الخ
وجدول بيانات المؤلفين يضم الحقول التالية : اسم المؤلف ، كنيته .. الخ
فنلاحظ أنا قمنا بتوحيد وتفصيل البيانات ووضع كل بيانات مترابطة في جدول واحد مما يعني أنه لن تضيع بيانات ولن تهدر مساحات من القرص .
4- المفتاح الأساسي والمفتاح الفرعي :
كما مر معك فإن حقل المفتاح الأساسي لا يمكن أن تتكرر قيمه بينما يمكن أن تتكرر قيم حقل المفتاح الفرعي المرتبط به .. فالجدول الأب هو من سيكون لديه حقل المفتاح الأساسي أما الجدول الابن فهو الذي لديه المفتاح الفرعي .
5- التكامل المرجعي :
يحتم فرض التكامل المرجعي على العلاقة بين جدولين على ضمان تطابق المعلومات في الجدولين ( الرئيسي والفرعي ).. فمن خلاله لن يسمح نظام قواعد البيانات بإدراج سجل في الجدول الفرعي (الابن) ما لم يكن له سجل سابق في الجدول الرئيسي (الأب) .. وحين إضافة ابن بلا أب ستخرج رسالة خطأ وتمنعك من إضافة السجل الابن . ويشتمل التكامل المرجعي على شيئين وهما :
1- تتالي التحديث :
وتعني أنه عند تغيير قيمة المفتاح الأساسي في الجدول الأب فإن التغيير سيسري إلى أبناءه في الجدول الابن وسيأخذون القيمة الجديدة لضمان التحاقهم بأبيهم .
2- تتالي الحذف :
وتعني أنه عند حذف أب من جدول الأب سيحذف معه أبناؤه في جدول الابن لكي لا يترك أبناء بلا أب لهم . لكن يمكنك حذف ابن من جدول الابن ما لم يكن هذا الابن له أبناء لأنه قد تتسلسل القاعدة إلى آباء وأبناء فقد يكون هناك أب له ابن وهذا الابن يكون أباً لأبناء .. وهكذا فلا يمكن حذف هذا الابن إلا بعد حذف أبناءه ولو اخترت تتالي الحذف في علاقاتها كله مع بعض سيتم حذف الأب والابن وأبناء الابن .. الخ .
هناك توجيهات تخصك كمطور قواعد بيانات منها :
1- تجنب الحروف العربية في تسمية كائنات قاعدة البيانات واستخدم الحروف الإنجليزية عوضا ًعنها بدءاً من اسم القاعدة إلى أسماء الجداول وأسماء النماذج والتقارير والاستعلامات والماكروا والوحدات النمطية حتى تتجنب مشقة الكتابة في محرر فيجول بيسك عند كتابة الأكواد .
2- ابتعد عن تسمية الكائنات بأسماء محجوزة لدى نظام قاعدة البيانات فمثلاً لا تسم الجدول باسم Table أو Tables أو النماذج باسم Form أو Forms كذلك Report للتقارير ، User وكل الكلمات والعبارات المحجوزة من قبل نظام قواعد البيانات حتى لا تقع في مشاكل أنت في غنى عنها .
3- اختر الأسماء كما تفهمها أنت والتي تدل على ما يراد منها .
4- بعد أن تنجح في كتابة كود وتعتمده اكتب تعليقاً يوضح عمله .
5- احتفظ بنسخ من قاعدة البيانات حتى لا يذهب جهدك سدى .
غدا بأذن الله نبدأ بتصميم برنامج بسيط جدا من خلاله نبدأ تعلم بناء قاعدة بيانات
إلى ذلك الحين اترككم في امان الله
شبكة
ومنتديات خط الطيران - نسخة خفيفة من المنتدى