منتدى التصميم والاشهار العربي

منتدى التصميم والاشهار العربي

منتدى التصميم والاشهار العربي
 
الرئيسيةشبكة ابداعاليوميةمكتبة الصورس .و .جبحـثالأعضاءالمجموعاتالتسجيلدخول
اهلا وسهلا بكم في منتدى التصميم والاشهار العربي



شاطر | 
 

 الدرس الرابع : العلاقات Relationships

اذهب الى الأسفل 
كاتب الموضوعرسالة
Mr.samer
مؤسس شبكة
مؤسس شبكة
avatar

عدد المساهمات : 311
نقاط النشاط : 479
مستوى النشاط : 1
تاريخ التسجيل : 22/06/2012
الموقع : شبكة ابداع

مُساهمةموضوع: الدرس الرابع : العلاقات Relationships    السبت أغسطس 11, 2012 4:56 am

بسم الله الرحمن الرحيم

.
السلام عليكم
ورحمة الله وبركاته
.

العلاقات RelationShip


قبل أن نبدأ نود أن نعرف أولاً لماذا
نستخدم العلاقات ؟ لنعرف ذلك لا بد لنا أولاً أن نعرف ما معنى علاقة .

يقصد العلاقة
هو اشتراك حقل بين جدولين بحيث تملك كل قيمة في هذا الحقل سجلين ، السجل
الأول في الجدول الأول والسجل الثاني في الجدول الآخر
.


نعود إلى سؤالنا السابق : نستخدم العلاقة لنضمن شيئين رئيسيين :
أولاً : تحقيق
تكامل حقيقي بين جداول قاعدة البيانات

.
ثانياً : منع
تكرار القيم في أي من الجداول لمنع إهدار حجم قواعد البيانات
.



ربما لم نبدأ بعد ، ولكن لنرى مثالاً
سريعاً نضيفه سوياً لقاعدة البيانات التي كنا نعمل عليها الدروس السابقة .
لنقل أننا نريد أن نريد أن نقسم الأصدقاء إلى أربع مجموعات - مثلاً - بحسب
السنة الدراسية في الكلية على سبيل المثال ، ونريد أن نعرف عن كل سنة عدد
الطلبة فيها وعدد المواد الدراسية

.
إذا كنا نعمل بالطريقة التقليدية فسنقول : نضيف لكل صديق حقل خاص بالسنة ، وحقل آخر خاص بعدد
الطلبة العام وحقل ثالث بعدد المواد

.
لكن لاحظ كم مرة سنكرر عدد المواد ، وعدد الطلبة

.
لاحظ أيضاً لو زادت مادة لطلبة أي سنة دراسية ، فهذا يعني
أننا سنحدث بيانات جميع الحقول

.
وقل نفس الأمر بالنسبة للحذف وغير ذلك

.
ربما لا يتضح موضوع الحذف في مثالنا ( نوتة الهواتف ) ولكن
سأخرج - جزئياً - عن الموضوع لأشرح مثالاً صغيراً على عملية الحذف

.

لنفرض أن لدينا قاعدة بيانات تحتوي على
الموظفين ويهمنا فقط اسم الموظف وفرع الشركة التي يعمل فيها ومكان الفرع .
إذا قامت الشركة مثلاً بحذف فرع ... فهذا يعني أن تقوم يدوياً -
أو حتى بالكود - بحذف جميع
الموظفين الذين ينتمون إلى هذا الفرع

.
لكن الأمر ليس كذلك مع العلاقات ، فبمجرد حذف القسم سوف
يحذف تلقائياً الموظفون التابعون له طبعاً
فقط إذا كنا نرغب في ذلك

- .

لتلافي ذلك فإننا
نستخدم ما يعرف بالعلاقات
RelationShip .


أنواع
العلاقات
:

النوع الأول : One To One - علاقة واحد لواحد .
في هذه العلاقة نقول أن لكل سجل في القاعدة الرئيسية سجل
واحد يقابله في القاعدة الثانية

.
مثال على هذه العلاقة ضمن قاعدة بيانات الأصدقاء

:
بفرض أننا نريد اضافة المعلومات الموجودة ضمن البطاقة
الشخصية ( رقم البطاقة - فصيلة الدم -
مصدر البطاقة

)
نستطيع اضافة هذه الحقول مباشرة إلى الجدول الأول ، ولكن
لاحظ كم سيصبح حجم هذا الجدول ، وبالتالي إذا حاولنا استخراج اسماء
الأصدقاء فقط فسيستغرق المزيد من الوقت

.
ربما لن يظهر ذلك مع قاعدتنا البسيطة ولكنه يظهر مع قواعد
البيانات الضخمة

.
إذن سنقوم بانشاء جدول جديد يحتوي على الحقول التالية ( رقم البطاقة - فصيلة الدم - مصدر
البطاقة

)
PassPort - BClass - From


تبقى شيء واحد وهو الحقل الذي يمثل رابطاً بين الجدولين

.

وهذا الحقل الرابط له شروط هي :
* أن يكون موجوداً في
الجدولين

.
* أن يكون نوعه
متطابقاً في الجدولين ( فلا يصلح أن
يكون الأول رقم والثاني نص

) .
* أن يحتوي على قيم
فريدة ( بمعنى أن لا يتكرر ) حتى لا يسبب المشاكل

.

ولذا فإننا نقول أننا لا نستطيع أن
نستخدم حقل الإسم لاخلاله بالشرط الثالث لاحتمال تشابه الأسماء .
لذلك فإن أنسب حقل هو حقل الرقم لأننا ذكرنا أنه سيحتوي على
قيم فريدة ( غير متشابهه

) .
قم الآن باضافة حقل Number إلى
الجدول السابق وعينه كمفتاح رئيسي Primary
Key
، وقم بحفظ الجدول تحت اسم Tb_R1 أو
أي اسم كما تحب

.

*** في
النهاية لا يستحب استخدام هذا النوع من العلاقات كثيراً ...





النوع الثاني : One To Many - علاقة واحد لمجموعة ( والعكس صحيح ) .
في هذه العلاقة نقول إن لكل سجل في الجدول الرئيسي مجموعة
سجلات في الجدول الثاني

.
مثال ذلك المثال الذ قمنا بشرحه في الدرس السابق

.
لو لاحظت المثال ستجد أن مجموعة من الطلاب يمكن أن يكون لهم
سجل واحد في جدول الفرق ، لكن لا يمكن أن يكون لطالب ( سجل ) واحد أكثر
من سجل آخر في جدول الفرق ( السنوات
الدراسية

) .
وهذا هو الفرق بينه وبين النوع التالي

.
لذا قم بانشاء جدول ثالث تحت اسم Tb_R2 ويحتوي على الحقول التالية

:
Year - Books - Students


السنة - الكتب - الطلاب


يمكننا اضافة حقل جديد في الجدول الأول Tb_Main تحت اسم Year حيث
سيكون هو الحقل الرابط بين الجدولين

.
قم بالضغط على الجدول الأول ، ثم اضغط على ( تصميم -
Design )
، ثم قم بالضغط بزر الماوس الأيسر في المكان المطلوب ثم قم
بالضغط على ( ادراج صف

- Insert Row ) .


أيضاً لا تنس أن تجعل حقل Year مفتاح رئيسي في الجدول الثاني ( جدول الفرق الدراسية ) .

*** هذا النوع من
علاقات هي الأكثر استخداماً
.

نلتقي في الجزء الثاني من الدرس ...
الرجوع الى أعلى الصفحة اذهب الى الأسفل
معاينة صفحة البيانات الشخصي للعضو http://altsmem.ahlamontada.com
salah xavi
مبدع مشارك
مبدع مشارك
avatar

عدد المساهمات : 76
نقاط النشاط : 76
مستوى النشاط : 2
تاريخ التسجيل : 26/07/2012
العمر : 20

مُساهمةموضوع: رد: الدرس الرابع : العلاقات Relationships    الثلاثاء أغسطس 28, 2012 6:34 pm

شكرا
الرجوع الى أعلى الصفحة اذهب الى الأسفل
معاينة صفحة البيانات الشخصي للعضو
العالمى 6
مبدع جديد
مبدع جديد
avatar

عدد المساهمات : 10
نقاط النشاط : 10
مستوى النشاط : 2
تاريخ التسجيل : 28/08/2012
العمر : 28

مُساهمةموضوع: رد: الدرس الرابع : العلاقات Relationships    الثلاثاء أغسطس 28, 2012 6:36 pm

شكرااا
الرجوع الى أعلى الصفحة اذهب الى الأسفل
معاينة صفحة البيانات الشخصي للعضو
 
الدرس الرابع : العلاقات Relationships
الرجوع الى أعلى الصفحة 
صفحة 1 من اصل 1

صلاحيات هذا المنتدى:لاتستطيع الرد على المواضيع في هذا المنتدى
منتدى التصميم والاشهار العربي :: جديد شبكه ابداع :: دورات شبكة ابداع :: سلسلة دروس تعليم أكسيس-
انتقل الى: