• 0

محتاج حل Join لاكثر من جدول

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

 

اخواني احتاج شرح مبسط 

الان فرضا عندي جدول اليوزرات 

اسمه user

الاعمدة اللي فيه 

user_id

UserName

--------------------------------

جدول اخر خاص للمواضيع  نفرض اسمه item

فيه الاعمدة ( 

item_id

title

content

userid  هذا فوريجن كي FOREIGN  KEY  عشان اربطه بالموضوع  كل عضو ينزل موضوع يتم ربط الايدي الخاص بالعضو داخل جدول المواضيع 

--------------------------------

وجدول اخير اللي هو التعليقات comment

والاعمدة اللي فيه 

comment_id

content

user_id // اربطه باليوزر اللي اضاف الرد

item_id // اربطه بالموضوع اللي رد فيه 

-----------------------------

 

السؤال هنا من هو الأب 

يعني جدول اليوزرات هو الاب للتعليقات  بحيث لو انحذف اليوزر تنحذف التعليقات 

طيب لو انحذف الموضوع تنحذف التعليقات ( يعني الموضوع هو الاب ايضا للتعليقات

------------------------------------

اقتباس

 

ياليت توضيح بسيط للمسالة 

كيف اربط الموضوع باليوزرات بالتعليقات بحيث لو انحذف الموضوع تنحذف التعليقات بالكامل التابعه للموضوع 

لو انحذف العضو تنحذف كامل تعليقاته من كامل المواضيع 

 

---------------------------------------

 

احس صابني صداع نصفي مني قادر افهم الفكره 

 

 

وجزاكم الله خير مقدماً

تمّ تعديل بواسطة KSA brg

انشر على الشّبكات الاجتماعية


رابط هذه المساهمة
  • 1
اقتباس

ياليت توضيح بسيط للمسالة 

كيف اربط الموضوع باليوزرات بالتعليقات بحيث لو انحذف الموضوع تنحذف التعليقات بالكامل التابعه للموضوع 

لو انحذف العضو تنحذف كامل تعليقاته من كامل المواضيع 

الواضح من كلامك أنك تريد أن تحذف الموضوع فبشكل تلقائى يتم حذف التعليقات المرتبطة

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

 

إن كان هذا ما تريد فعلا فقد أجبتك أنك اثناء بناء الجدول يجب تفعيل الخاصية  DELETE CASCADE فى الجداول التى تحتوى FK المفتاح الأجنبى

عند ذلك بمجرد حذف المستخدم سوف يتم حذف موضوعاته وتعليقاته لا تحتاج Join فى شئ

 

أما لو كان ما تريده خلاف ذلك .. فالسؤال غير واضح بالنسبة لى

 

انشر على الشّبكات الاجتماعية


رابط هذه المساهمة
  • 0

المفروض أثناء بناء الجدول تفعل الخيار الخاص بحذف الابناء بمجرد حذف الاب
 هذه الخيار اسمه CASCADE

 

مثال

CREATE TABLE supplier ( supplier_id numeric(10) not null, supplier_name varchar2(50) not null, contact_name varchar2(50), CONSTRAINT supplier_pk PRIMARY KEY (supplier_id) );

 

CREATE TABLE products ( product_id numeric(10) not null, supplier_id numeric(10) not null, CONSTRAINT fk_supplier FOREIGN KEY (supplier_id) REFERENCES supplier(supplier_id) ON DELETE CASCADE );

 

تمّ تعديل بواسطة hany moh
تنسيق الاكواد

انشر على الشّبكات الاجتماعية


رابط هذه المساهمة
  • 0
بتاريخ 3 ساعات قال hany moh:

المفروض أثناء بناء الجدول تفعل الخيار الخاص بحذف الابناء بمجرد حذف الاب
 هذه الخيار اسمه CASCADE

 

مثال


CREATE TABLE supplier ( supplier_id numeric(10) not null, supplier_name varchar2(50) not null, contact_name varchar2(50), CONSTRAINT supplier_pk PRIMARY KEY (supplier_id) );

 


CREATE TABLE products ( product_id numeric(10) not null, supplier_id numeric(10) not null, CONSTRAINT fk_supplier FOREIGN KEY (supplier_id) REFERENCES supplier(supplier_id) ON DELETE CASCADE );

 

فعلت كل شي اضفتها UPDATE AND DELETE 

وفعلت الفورجين كي واضفته للعمود 

 

انا مشكلتي بالاستعلام JOIN

 

جعلت الموضوع اب للتعليقات بحيث التعليقات هي الابناء 

وعند حذف الموضوع تنحذف التعليقات

 

انا اريد توضيح كامل الله لايهينك 

مع مثال بسيط جدا 

وانا سأفهم الفكره 

لاني اريد ربط many To many  لعدة جداول 

 

لكن صابني صداع ولم استطع التفكير :( مع الاسف

انشر على الشّبكات الاجتماعية


رابط هذه المساهمة
  • 0

ربما لم يصل السؤال جيدا 

 

انا كنت اقصد 

ان جدول المواضيع هو الاب للتعليقات 

بحيث جدول التعليقات  هو من يحتوي على المفتاح الاجنبي 

وجدول اليوزرات هو الاب ايضا للتعليقات  بحيث التعليقات يحتوي على مفتاح اخر  اجنبي خاص باليوزرات 

 

الف شكر  لك لمحاولتك المساعده 

 

انا فعلا وجدت الحل  many To many 

بحيث جدول التعليقات هو الرابط بين كل الجداول 

انشر على الشّبكات الاجتماعية


رابط هذه المساهمة
  • 0
اقتباس
بتاريخ On 9/7/2016 at 14:42 قال KSA brg:

 

فعلت كل شي اضفتها UPDATE AND DELETE

كيف اضفت الاثنين مع بعض فى نفس العمود ؟

بتاريخ On 9/11/2016 at 15:00 قال KSA brg:

انا فعلا وجدت الحل  many To many 

بحيث جدول التعليقات هو الرابط بين كل الجداول 

هل يمكن ان نرى الصورة كاملة الان ؟
مثلا التصميم او كود انشأ قاعدة البيانات مثلا ؟

انشر على الشّبكات الاجتماعية


رابط هذه المساهمة

يجب أن تكون عضوًا لدينا لتتمكّن من التعليق

انشاء حساب جديد

يستغرق التسجيل بضع ثوان فقط


سجّل حسابًا جديدًا

تسجيل الدخول

تملك حسابا مسجّلا بالفعل؟


سجّل دخولك الآن