الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

العلاقات

بدأه morsyyy في 21 يونيو 2012 · 9 رد · 1,017 مشاهدة · في قواعد بيانات Microsoft Access
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

السلام عليكم اساتذتى الكرام

هناك سؤال يطرح نفسة فهل من مجيب...؟

وهو

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

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

ولكم كجزيل الشكر ووافر الاحترام

هذا هو المثال

المرفق

db2.rar

#2
morsyyy كتب:

السلام عليكم اساتذتى الكرام

هناك سؤال يطرح نفسة فهل من مجيب...؟

وهو

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

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

ولكم كجزيل الشكر ووافر الاحترام

هذا هو المثال

المرفق

db2.rar

اخي الفاضل

العلاقات في قاعدة البيانات تكون على النحو التالي :

1. واحد الى واحد او تسمى رأس برأس

2. واحد ال متعدد او تسمى رأس بأطراف

3. متعدد الى متعدد او تسمى كثير الى كثير

اما ما يخص الإرتباطات فتكون على النحو التالي

RIGHT JOIN

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

LEFT JOIN

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

INNER JOIN

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

OUTER JOIN

ربط خارجي ( هذا النوع قليل الإسنخدام في عمليات الربط في جمل الإستعلام لأنه عند استخدام هذا النوع من الروابط ذات الصلات الخارجية فإنه سوف يظهر لنا جميع السجلات حتى لو لم يكن لديهم الحقول المتطابقة في الجدول .

هناك ملاحظة : اذا تم استخدام اكثر من روابط فيجب علينا معرفة طريقة الربط وإلا سوف نحصل على رسالة خطأ من الإستعلام بهذه الطريقة

post-15367-045948000 1340275722_thumb.gi

post-15367-037171600 1340275816_thumb.gi

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

post-15367-067283500 1340276113_thumb.gi

post-15367-087553000 1340276184_thumb.gi

za-db2-UP.rar

بالتوفيق

المرفقات
P1.gifP2.gifP3.gifP4.gif

تم تعديل هذه المشاركة بواسطة zahrah في 21 يونيو 2012 في 13:59

1
#3

السلام عليكم

مازالت استازتى وسوف تزالى بحر عطاء للتلاميذ امثالى

قد استفدت من توجيهاتك استاذتنا العظيمة زهره

لك منى افضل تحياتى وتمنياتى لك بالتوفيق

والسلام عليكم

#4

السلام عليكم

مازالت استاذتى وسوف تزالين بحر عطاء للتلاميذ امثالى

معزرتا لو هناك استاذتى زيادة توضيح ارجوكى افيدينى

عندما حاولت ان اطبق ما شرحتية وقعت فى نفس مشكلة الارور....حتى فى المثال المرفق من حضرتك بعد تعديلاتك عندما قمت بانشاء استعلام بنفس الجداول ظهرت نفس المشكلة!!!!!

فلا اعرف لماذا ..اكيد سوء فهم منى

افيدينى استاذتى الكريمة

#5
morsyyy كتب:

عندما حاولت ان اطبق ما شرحتية وقعت فى نفس مشكلة الارور....حتى فى المثال المرفق من حضرتك بعد تعديلاتك عندما قمت بانشاء استعلام بنفس الجداول ظهرت نفس المشكلة!!!!!

فلا اعرف لماذا ..اكيد سوء فهم منى

افيدينى استاذتى الكريمة

اخي الفاضل

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

1
#6

السلام عليكم

استاذتى العزيزة الغالية زهره

هذا هو هو نفس المثال الذى قد قمت حضرتك بارسالة لى ...ماقد فعلتة هو اننى عند اضافة Query2 بنفس الجداول لم يعمل هذا الQuery2 لا ادرى ما السبب؟

za-db2-UP.rar

لك منى تحياتى

#7

اخي الفاضل

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

عندما يكون هناك اب لمجموعة ابناء فهل الأبناء هم الذين جاءوا بالأب او ان العكس صحيح ؟

بالتأكيد ان الآب هو من اتي بالأبناء .

لهذا نسمي المفتاح الرئيسي في اي جدول بأنه هو الأب والمفاتيح الفرعية او الخارجية هي الأبناء فعند الربط بين اي جدولين لهم علاقات فحتما اننا نرجع المفاتيح الفرعية الى المفاتيح الرئيسية ( الأبناء يعودون للأب ) حتى يكون لدينا اولا علاقة ( واحد الى متعدد اي ان الأب الرئيسي يتفرع منه عدة ابناء وعند وضع الربط يجب ان يعود الأبناء الى الأب الرئيسي لهم )

لاحظ التعديل وطبق كما بالشرح المصور واعطنى النتيجة بعد ذلك

post-15367-018822500 1340374130_thumb.gi

post-15367-077051600 1340374156_thumb.gi

post-15367-082738800 1340374200_thumb.gi

post-15367-099383700 1340374222_thumb.gi

المرفقات
A1.gifA2.gifA3.gifA4.gif
1
#8

السلام عليكم

اللهم يكثر من امثالك استاذتنا الكريمة

الاستاتذة الناجحين امثال حضرتك دائما هم الذين يكونو صبورين مع تلاميذهم

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

واريد من استاذتى ان توضح لى

عندما قمت حضرتك بالشرح و بتعديل المثال اول مره اكتشفت الان (بعد ما فهمت من حضرتك طبعا) انك قد قمت ببتعديل الجوين الى رقم3 فقط فى الاستعلام Query1.ولم يتم اى تعديل فى الRelationship

فانا اريد ان اعرف لماذا اهو غير ضرورى ام انه ينبغى على ان اضبط كل العلاقات ان كانت هنا او هناك(لوحة العلاقات او الاستعلام) ام انه كان فقط التركيز لشرح طريقة الربط فقط فى اى مكان ..وانا اعتقد هذا السبب اكثر لاننى طبعا واثق فى استاذتى العظيمة

ارجو من حضرتك التوضيح

شاكر وعاجز عن رد الجميل

لكى منى زهره البساتين الاستاذة العظيمة

افضل تمنياتى لك

والسلام عليكم

#9

اخي الفاضل : مرسي

عندما نقوم بعمل اي علاقة بين جدولين فإن الوضع الطبيعي للعلاقات هو تضمين الصفوف التي تتساوى فيها الحقول المتصلة في الجدولين

لذا لو ذهبنا الى نافذة العلاقات ورأينا العلاقات نجدها في وضعها الطبيعي .

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

حسنا اخي الكريم ماذا لو اردنا ان نكون اكثر دقه في استخراج او الإستفسار او الإستعلام عن بيانات محدده بين الجدولين بحيث تكون البيانات الموجوده في الجدول الفرعي تطابق تماما الموجوده في الجدول الرئيسي حسب مفتاح الصلة بحيث لا تتعدى الى بيانات اخرى من جداول اخرى مرتبطة .

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

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

بالتوفيق

2
#10

السلام عليكم

اشكرك ايها الاستاذة العظيمه زهره على التوضيحات والشرح الوافى فبارك الله فيكى و يارب يخليكى لينا جميعا ولا يحرمنا من علمك ويزيدك علما وهدا

ووفقك الله

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

مواضيع مشابهة