eng_mostafa عضو نشط
عدد الرسائل : 70 تاريخ التسجيل : 28/01/2008
| موضوع: الدرس الثاني / تطبيق انشاء قاعدة البيانات لبرنامجنا تفضل الأحد فبراير 10, 2008 2:42 pm | |
| بسم الله الرحمن الرحيم . السلام عليكم ورحمة الله وبركاته .
إذا كنت قد اطلعت على الرابط الذي اضفته في الدرس السابق ، فإنك الآن تستطيع تكوين DFD و ERD لبرنامجنا مع ما يحلقهما ، ولكن هذا ليس ضرورياً في سير الدورة نظراً لإنه لم يتم شرحه بالكامل ، ولذا فهو ليس اجبارياً ، ولكن في الواقع سيتم الالتزام بهذا الجزء وكما أسلفنا فستكون هناك سلسلة دروس بخصوص هذا الموضوع في القسم الخاص بتحليل وتصميم النظم .
ولمن اطلع على الرابط ، وأراد تكوين DFD للبرنامج ، فإنه ما زال محتاجاً لمعرفة خطوات سير البرنامج ، في البداية يمكن أن تكون هذه الخطوات نموذج مبسط من سير البرنامج .
* ادخال بيانات المورد - تخزينها في جدول الموردين . مطلوب في هذه الخطوة : بيانات المورد . * ادخال بيانات النوع - تخزينها في جدول الأنواع . مطلوب في هذه الخطوة : بيانات النوع . * ادخال بيانات البضاعة - تخزينها في جدول البضائع . مطلوب في هذه الخطوة : بيانات البضاعة + موردها + نوعها . * تطبيق عملية بيع على بضاعة . مطلوب في هذه الخطوة : بيانات عملية البيع + البضاعة . * تطبيق عملية شراء على بضاعة ( وعملية الشراء الكاملة تشتمل على عدد من البضائع ) . مطلوب في هذه الخطوة : بيانات عملية الشراء + البضاعة . * عرض تقرير بالبضائع الموجودة في المخزن . مطلوب في هذه الخطوة : بيانات البضائع والموردين والأنواع + عمليات البيع والشراء عليها . * عرض تقرير الأنواع . مطلوب في هذه الخطوة : بيانات الأنواع + بيانات بضائعه وعمليات البيع والشراء عليها . * عرض تقرير الموردين . مطلوب في هذه الخطوة : بيانات الموردين + بيانات بضائعه وعمليات البيع والشراء عليها . * عرض التقرير اليومي أو على فترة . مطلوب في هذه الخطوة : تاريخ اليوم أو الفترة + عمليات البيع والشراء التي تمت خلالها .
وكما هي الاضافة فهناك التعديل والحذف ايضاً في أغلب العمليات السابقة . وهناك أيضاً عناصر أخرى للبرنامج مثل .
* عمليات البحث . * حماية قاعدة البيانات . ومعلومات السوبر ماركت وخلافه . * نسخ واستيراد قواعد البيانات .
وهكذا تستطيع تكوين DFD خاص بالبرنامج ،
ERD :
سنتجاوز بعض العناصر ونقفز مباشرة إلى ERD ومن سير البرنامج السابق نستطيع أن نستبين عناصر حفظ البيانات المطلوبة وهي :
* جدول بيانات الموردين . * جدول بيانات الأنواع . * جدول بيانات البضائع . * جدول عمليات البيع والشراء .
* وجدول اضافي آخر وهو الخاص بالحماية ومعلومات المحل وغير ذلك .
كما وسنجد العلاقات التالية بين الجداول السابقة :
* علاقة One-Many بين الموردين والبضائع ( مورد واحد يورد مجموعة من البضائع ) .
* علاقة One-Many بين الأنواع والبضائع ( نوع واحد يحوي مجموعة من البضائع ) .
* علاقة One-Many بين البضائع وعمليات البيع والشراء ( صنف بضاعة واحد يدخل في العديد من عمليات البيع والشراء ) .
والآن سنرى الحقول داخل كل جدول ، وسنلتزم منذ الآن فصاعداً بالأسماء لاضافتها لاحقاً في قاعدة البيانات .
أولاً : جدول الموردين . الاسم Tb_Factory
الحقول :
* Number رقم المورد ، وهو من نوع Auto Number - ترقيم تلقائي ، كذلك فهو Primary Key - مفتاح رئيسي .
* Name : اسم المورد ، وهو من النوع Text - نص ، وطول الحقل Field Size لا ينبغي أن يزيد على 30 مثلاً .
ثانياً : جدول الأنواع . الاسم Tb_Category
الحقول :
* Number رقم النوع، وهو من نوع Auto Number - ترقيم تلقائي ، كذلك فهو Primary Key - مفتاح رئيسي .
* Name : اسم المورد ، وهو من النوع Text - نص ، وطول الحقل Field Size لا ينبغي أن يزيد على 30 مثلاً .
سنضيف أيضاً حقل تحت اسم View من نوع Yes/No - نعم / لا ، وهذا الحقل يقوم بتوضيح الموردين أو الأنواع الذين يتم حذفهم ، وذلك حتى إذا انتهت آخر بضاعة تحت أي منهم يتم حذفه بالكلية من الجدول .
أو بمعنى آخر : عند الحذف سوف يأخذ هذا الحقل قيمة False مؤقتاً حتى يتم حذف آخر بضاعة تقع تحته ، في هذه الحالة فقط سوف يحذف المورد أو النوع .
ثالثاً : جدول البضائع . الاسم Tb_Product
الحقول :
* Number رقم النوع، وهو من نوع Auto Number - ترقيم تلقائي ، كذلك فهو Primary Key - مفتاح رئيسي .
* Name : اسم البضاعة ، وهو من النوع Text - نص ، وطول الحقل Field Size لا ينبغي أن يزيد على 30 مثلاً .
* Factory المورد أو مصنع البضاعة ، وهو من النوع Number - رقم ، وحجم الحقل Field Size هو عدد صحيح طويل ، وسيتم ربطه لاحقاً بجدول الموردين .
* Category النوع ، وهو من النوع Number - رقم ، وحجم الحقل Field Size هو عدد صحيح طويل ، وسيتم ربطه لاحقاً بجدول الأنواع .
* Price وهو سعر الوحدة ( الأساسي مع امكانية تغييره في عمليات البيع والشراء ) وهو من نوع Number - رقم ، وطول الحقل Field Size هو ( مزدوج - Double ) وذلك لاتاحة الفرصة للكسور ( مثلاً 5.5 ) .
* Count وهو العدد الأولي للبضاعة ، والذي سيزيد أو ينقص تبعاً لعمليات البيع أو الشراء . وهو من نوع عدد صحيح طويل .
* Box_Count عدد الوحدات في كل صندوق ، ويفيد هذا الحقل في حالة اضافة بضائع بالصندوق أو بيعها بنفس الطريقة لمعرفة عدد الوحدات المباعة . وهذا الحقل من نوع Number - رقم ، وكذلك من طول : عدد صحيح طويل .
يتبع ...
رابعاً : جدول عمليات البيع والشراء . الاسم Tb_Sel_Bay
*** تمثل كل عملية بيع بضاعة في هذا الجدول ، وإذا تم شراء عدد من البضائع مثلاً فإنه يتم اضافة سجل منفصل لكل منهم .
الحقول :
* Number رقم العملية ، وهو من نوع Auto Number - ترقيم تلقائي ، كذلك فهو Primary Key - مفتاح رئيسي .
* Product البضاعة ، وهو من النوع Number - رقم ، وحجم الحقل Field Size هو عدد صحيح طويل ، وسيتم ربطه لاحقاً بجدول البضائع .
* Date : تاريخ العملية ، وهو من النوع Date/Time - تاريخ /وقت . وفي حقل تنسيق - Format نقوم باختيار تنسيق Short Date .
* Count وهو العدد الأولي للبضاعة ، والذي سيزيد أو ينقص تبعاً لعمليات البيع أو الشراء . وهو من نوع عدد صحيح طويل .
* Price السعر الاجمالي لعملية البيع هذه ( لبضاعة معينة ) . وهو من نوع Number .
* Kind هو حقل من نوع رقم Number لكنه من طول Byte - بايت ، وفي حالتنا فهو يحمل أحد قيمتين ( 0 ، 1 ) للتفريق بين عمليتي البيع والشراء .
*** أيضاً يمكن جعل هذا الحقل من نوع Yes/No - نعم/ لا لتدل الحالة الأولى على النوع الأول ( بيع مثلاً ) والثانية على النوع الثاني وذلك لتخزينها فعلياً في متغير من نوع bit والذي يقبل 0 أو 1 .
خامساً : جدول المستخدمين . الاسم Tb_User
*** هذا الجدول لن يحتوي إلا على سجل واحد ويحتوي على معلومات المستخدم ( ويمكن تطويره لعدة مستخدمين بسهولة ) اما إذا ظل مستخدماً واحدة - كما هي العادة - فيمكن الاستعاضة عنه بتخزين هذه القيم في مستند نصي أو في مسجل النظام ( الريجستري Rigistery ) .
الحقول :
* User-Name : اسم المستخدم . وهو نص Text بطول أقصى 15 خانة .
* PassWord : كلمة المرور وهو أيضاً نص بحد أقصى 15 خانة .
* Name : اسم المحل أو خلافه ، وهو نص بطول 50 خانة .
* Telephone : الهاتف ، وهو رقم من نوع عدد صحيح طويل .
*** يفضل تخزين الهاتف ، والهاتف الجوال وخلافه في حقول نصية دائماً . فهي أكثر توفيراً للمساحة كما تتيح لك اضافة رقم مثل 010 -
صفر على اليمين - على عكس الحقول الرقمية .
* More : اي بيانات اضافية يرغب في اضافتها وعرضها ، وهو من نوع مذكرة Memo .
والآن نقوم باضافة الجداول السابقة إلى قاعدة بيانات من نوع أكسيس كما تعلمنا أو كما نعرف
عن الاكسيس وإذا لم تعرف أدخل إلى منتدى الاوفيس قسم الاكسيس. .
وهنا لن نضطر لتحويل الاصدار إلى 97 حيث أننا سنكمل مشوارنا مع Dao والتي تتعامل مع أنواع احدث من قواعد البيانات من Access . وليس ADODC
بعد قيامك بتشغيل Microsoft Access قم بانشاء قاعدة بيانات تحت اسم Db1 ، بعد ذلك قم باختيار ( جداول Tables ) ، ومن ثم : انشاء جدول في طريقة عرض التصميم - Create Table in Design View وبعد ذلك قم باضافة حقول كل جدول على حدة ، وبعد الانتهاء قم بحفظ الجداول .
بعد ذلك سنطبق العلاقات والتي تعرضنا لكيفية عملها في الأجزاء السابقة من الدورات ، ولكن باختصار :
من قائمة Tools اختر RelationShip ( أدوات - علاقات ) من ثم اختر من الجدول الظاهرة الجداول التالية : Tb_Product - Tb_Factory - Tb_Category - Tb_Sel_Bay إذا لم يظهر جدول اضغط بزر الماوس الأيمن واختر ( اظهار جداول - Show Tables ) .
الآن قم بوضع زر الماوس على حقل Number من Tb_Factory واسحب منه على حقل Factory في الجدول Tb_Product . سوف يظهر خط يصل بين الجدولين ، فيما ستظهر شاشة ، اجعل الثلاثة اختيارات صحيحة .
*** تحدد هذه الاختيارات لتحقيق تكامل بين الجدولين ، فمثلاً إذا تم حذف نوع فإن البضائع التي تحته يتم حذفها أيضاً . كذلك لن يتم اضافة بضائع تحت نوع غير موجود أصلاً ..
بنفس الطريقة انشأ علاقة من جدول Tb_Category مع حقل Category في جدول Tb_Product .
العلاقة الثالثة والأخيرة سوف تكون بين حقلي Number في Tb_Product وحقل Product في جدول Tb_Sel_Bay ... قم بسحب الماوس من الحقل Number باتجاه حقل Product بنفس الطريقة السابقة .
أخيراً نقوم باضافة كلمة سر ، وكما نعلم سابقاً نقوم باغلاق قاعدة البيانات ، ومن ثم نقوم بفتحها بطريقة Exuclusive ، بعد ذلك قم بوضع كلمة المرور من قائمة : أدوات Tools - أمان Securty ، وبعد ذلك اختر تعيين كلمة مرور .
وأن شاء الله فى الدرس القادم سوف أرفع لكم قاعدة البيانات ولكم جزيل الشكر
والله الموفق ... والسلام عليكم ورحمة الله وبركاته . | |
|
اسلام محمد عضو جديد
عدد الرسائل : 8 تاريخ التسجيل : 25/11/2007
| موضوع: رد: الدرس الثاني / تطبيق انشاء قاعدة البيانات لبرنامجنا تفضل الجمعة أبريل 18, 2008 5:28 pm | |
| | |
|