المقدمة
إن من أساسيات وشروط التصميم الجيد لقواعد البيانات هو عدم القيام بتضمين بيانات محسوبة في الجداول، بمعنى أنه لا يجب تخزين أية نتائج لعمليات حسابية في الجداول، حيث أن العمليات الحسابية يجب أن تجرى على مستوى النماذج، أو التقارير، أو الاستعلامات وهي الطريقة الأفضل (Best Practice).
المعضلة
“علي” معلم حاسوب ويريد أن يقوم بتصميم قاعدة بيانات لرصد درجات الطلاب تحتوي على الحقول التالية:
رقم الطالب، الاسم، درجة إختبار قصير أول، درجة إختبار قصير ثاني، درجة الأعمال الفصلية، درجة الإختبار النهائي، الدرجة النهائية، النسبة، النتيجة، والتقدير.
“علي” يعرف بأن هناك بعض الحقول تتطلب إدخال البيانات مثل درجة الإختبار ودرجة الأعمال الفصلية، وهو يعرف أيضا أن بعض البيانات يجب حسابها تلقائيا مثل مجموع الدرجات والنسبة المئوية وإلى آخره، فكيف يجب أن يقوم بتصميم قاعدة البيانات؟
الحل
ستجدون الحل في الملف المرفق والذي يحتوي على 3 كائنات هي:
1. جدول الطلاب: ويحتوي على رقم الطالب واسمه، ودرجات الإختبار الأول والثاني والنهائي ودرجة الأعمال الفصلية.
2. إستعلام الدرجات: ويحتوي على كافة الحقول في جدول الطلاب، بالإضافة إلى الأعمدة التالية: الدرجة النهائية، النتيجة، النسبة، والتقدير.
3. نموذج رصد درجات: وهو مبني على الإستعلام السابق.
ما الذي ستتعلمه في هذا المثال
ستتعلم التالي:
– كيفية إنشاء أعمدة جديدة في الإستعلامات (تعادل حقول على مستوى الجدول) وإجراء العمليات الحسابيية.
– كيفية إنشاء أعمدة في الإستعلامات (تعادل حقول على مستوى الجدول) وإجراء العمليات الحسابيية مع استخدام دالة Nz للتعامل مع القيم الفارغة.
– كيفية إستخدام البرمجة الشرطية في الإستعلامات (قاعدة IF) بشكل مبسط.
– كيفية إستخدام البرمجة الشرطية في الإستعلامات (قاعدة IF) بشكل مركب.
– استخدام خصائص الحقل في الإستعلامات.
أيضا ستعلم كيفية استخدام خاصية قاعدة التحقق من الصحة في الجداول للتأكد من صحة إدخال درجات الطلاب، كما ستتعلم أيضا طريقة استخدام الاستعلام كمصدر سجلات لنموذج ما، والتنسيق الشرطي في النماذج.


التنزيل
لتنزيل الملف يرجى النقر فوق الصورة التالية.
إذا واجهتك أية مشاكل في تنزيل الملف فلا تترد في الإتصال بي عبر البريد الإلكتروني التالي:
تلميحة لمطورو Oracle
لا شك أن في Oracle لديك خيارات أفصل منها استخدام خاصية Calculation Mode في النماذج على سبيل المثال، ولكن مبادىء تصميم قواعد البيانات هي نفسها، بمعنى إنك أيضا لا تستطيع تضمين بيانات محسوبة في الجداول، وواحدة من الحلول الجيدة هي إنشاء View (يعادل الإستعلامات في Access) من خلال SQL Developer وكتابة جملة SQL، مع ملاحظة أهمية استخدام دالة NVL (تعادل تماما Nz في MS Access) للتعامل مع القيم الفارغة حتى لا تحدث أخطاء في إجراء العمليات الحسابية، ثم استخدام هذا View في إنشاء Data Block بالنموذج.
🙂
والله مادري شنو اقول ….. شرح قوي !
ووصل بوقته دامي احضر اخر مشروع لمادة المعلوماتية ومطلوب فيه قاعدة بيانات فيها حقول محسبوه 🙂
لك جزيل الشكر على مجهودك الطيب ويعطيك العافيه 🙂
إعجابإعجاب
محسوبه *
إعجابإعجاب
حياك الله عزيزي وأنا سعيد بتعليقك، لا تنسى استخدام Nz مهمة ترى جدا في العمليات الحسابية.
وإذا عندك أفكار أو إستفسار معين فراح أكون سعيد اكثر لو راسلتني.
إعجابإعجاب
اريد كيفية اجراء قاعدة بيانات من الناحية التفصيلية او برسم كيف تم تحويل من IR الي جداول ارجو المساعدة فى اسرع وقت ممكن لو تفضلتم الدكتور طالب منا هكي
إعجابإعجاب
راجع هذه الروابط:
http://office.microsoft.com/ar-sa/access/HA100378371025.aspx?pid=CH100948231025
http://office.microsoft.com/ar-sa/access/HA012242511025.aspx?pid=CH100645691025
إعجابإعجاب
اولا شكرا على الردود تانيا انا اريد كيفية رسم باطريقة العلاقات فى نظام معين مثل تسجيل طلبة او اى موضوع اخر
وارجو مساعتى طالب منى الاستاد هدا الموضوع وعلية درجة كبيره كان تفضلتم ساعتونى على هدا الواجب ومنى لكم الدعاء الحسن
إعجابإعجاب
أرسل لي التفاصيل على بريدي الإلكتروني
kuwait10@msn.com
وإن شاء الله أساعدك على قدر الإستطاعة.
إعجابإعجاب
أمثله كتير حلو وهي ماده من تخصصي AIS
إعجابإعجاب
في مثال أخر هو انشاء جدول عن طلاب يستطعون تسجل في مباحث
إعجابإعجاب
اولا شكرا على الردود تانيا انا اريد كيفية رسم باطريقة العلاقات فى نظام معين مثل تسجيل طلبة او اى موضوع اخر
وارجو مساعتى طالب منى الاستاد هدا الموضوع وعلية درجة كبيره كان تفضلتم ساعتونى على هدا الواجب ومنى لكم الدعاء الحسن
إعجابإعجاب
أخي العزيز تمت الإجابة على هذا السؤال مسبقا، من فضلك راجع الرابط التالي:
https://kuwait10.wordpress.com/2010/05/22/erd
إعجابإعجاب
[…] […]
إعجابإعجاب
افيدونا لنستفيد ونفيد
إعجابإعجاب
الى الاستاذ kuwait10
السلام عليكم ورحمة الله وبركاته..
عندي قاعدة بيانات واحتاج مساعدتك..اذا بالامكان اراسلك على ايميلك فسأكون شاكرة لك جدا
إعجابإعجاب
وعليكم السلام ورحمة الله، يسعدني مساعدة كافة زوار المدونة.
إعجابإعجاب
تسلم والله
إعجابإعجاب
الاستاذ Kuait10 وباقي الزملاء المشاركين
أشكركم على إغناء الموضع بالشرح المفيد وأطلب منكم المساعدة حيث أنه عندي مشكلة حقيقية في ربط جداول قاعدة بيانات علامات طلاب يدخل فيها الجداول التالية:
1- جدول الأعوام الدراسية حيث يوجد فصلان في كل عام دراسي
2- جدول أسماء الموجهون حيث كل موجه يشرف على عدة شعب يمكن أن تكون من صفوف مختلفة
4- جدول الصفوف مثل الصف الأول والثاني والثالث … وهكذا وكل صف يتألف من عدة شعب
5- جدول الشعب وتضم الشعبة الواحدة ما بين 30~40 طالبا
6- جدول المواد الدراسية حيث كل شعبة عندها 12 مادة دراسية في الفصل الواحد وكل مادة دراسية يدرّسها مدرس واحد
7- جدول المدرسين حيث يمكن للمدرس الواحد أن يدرّس في شعب مختلفة من عدة صفوف لمادة دراسية واحدة أو أكثر
8- جدول علامات المادة الدراسية لطلاب شعبة واحدة في كل فصل من فصلي العام الدراسي
أرجو ممن يرغب في المساعدة الاتصال بي وسأعطيه تصميماً أولياً للجداول المذكورة سابقاً علماً أنني توصلت إلى طريقة لربط الجداول ببعضها ولكنها غير فعالة سوى في فصل دراسي واحد أي أنني مضطر أن أعمل قاعدة بيانات خاصة لكل فصل على حدة ولم أستطع أن أجعل علامات جميع مواد الطلاب لجميع الفصول الدراسية في قاعدة بيانات واحدة.
وشكراً لجميع من يريد المساعدة.
إعجابإعجاب
حياك الله أخي الكريم، وإن شاء الله ستجد المساعدة مني إذا أسعفني الوقت أو من غيري.
إعجابإعجاب
قاعدة البيانات عالية لم تعمل عندى
واريد تصميم قاعدة بيانات لمعرض سيارات
إعجابإعجاب
هذا الملف يحتوي على وحدات نمطية لذلك يجب تمكين عمل الماكرو أولا.
إعجابإعجاب
[…] […]
إعجابإعجاب
قمت بتصميم برانامج مرتبات ولكن لا أستطيع انشاء حقل محسوب ارجوا الأفادة وشكرا
إعجابإعجاب
شكرا عزيزي ولكن الرابط لا يعمل حيث ان رابيد شير من اتعس مواقع الرفع
اذا بالامكان رفعه على مركز تحميل اخر اكون لك شاكرا
إعجابإعجاب
تم تحديث الرابط، وأعتذر عن هذا الخلل.
إعجابإعجاب
انا فى الصف الثانى الثانوى وعندى امتحان عملى ومش عارف اى حاجة فى برنامجaccess
إعجابإعجاب
أتمنى لك التوفيق و Access سهل جدا أذا أقنعت نفسك أولا بأنك تريد أن تتتعلمه.
إعجابإعجاب
شكرا لمن يسهم في التعليم
إعجابإعجاب