اذهب إلى المحتوى
  • 0

ربط جدولين many to many في MYSQL 

Hanan Fahad2

السؤال

CREATE TABLE Orders_person (
    orr int NOT NULL,
    per int NOT NULL,

    PRIMARY KEY (orr,per),

    CONSTRAINT cons_clinets
        FOREIGN(orr) REFERENCES orders (OrderID)
        on DELETE CASCADED on UPDATE CASCADE,
    
    CONSTRAINT cons_shop
        FOREIGN(per) REFERENCES persons (OrderID)
        on DELETE CASCADED on UPDATE CASCADE
    
   

ابغا اربط جدولين many to many وين الخطا  mysql

تم التعديل في بواسطة Hassan Hedr
توضيح السؤال
رابط هذا التعليق
شارك على الشبكات الإجتماعية

Recommended Posts

  • 0

جدول الربط يجب أن يذكر معرّفي الجدولين الذي سيتم ربطهما

بفرض أن معرف الجدول persons هو الحقل PersonID، و معرف الجدول orders هو الحقل OrderID، فجدول الربط يجب أن يحوي على حقلين كل منهما يشير إلى معرف في أحد الجدولين المراد ربطهما، في حالتك هما orr و per

يصبح تعريف الربط للحقول تلك على الشكل التالي:

CONSTRAINT cons_clinets
  FOREIGN KEY (orr) REFERENCES orders (OrderID)
  on DELETE CASCADED on UPDATE CASCADE,

CONSTRAINT cons_shop
  FOREIGN KEY (per) REFERENCES persons (PersonID)
  on DELETE CASCADED on UPDATE CASCADE

حاولي إضافة الكلمة KEY بعد كلمة FOREIGN، وتأكدي من أسماء حقول المعرفات في كلا الجدولين واستبدليهما باسم الحقل الصحيح

رابط هذا التعليق
شارك على الشبكات الإجتماعية

  • 0

#1215 - Cannot add foreign key constraint

عطاني كذا 

CREATE TABLE Orders_person (
    orr int NOT NULL,
    per int NOT NULL,

    PRIMARY KEY (orr,per),
CONSTRAINT cons_clinets
      FOREIGN KEY (orr) REFERENCES orders (OrderID)
     ON DELETE CASCADE   ON UPDATE CASCADE ,
    
    CONSTRAINT cons_shop
      FOREIGN KEY (per) REFERENCES persons (PersonID)
      ON DELETE CASCADE   ON UPDATE CASCADE 
    
);

 

رابط هذا التعليق
شارك على الشبكات الإجتماعية

  • 0
بتاريخ 45 دقائق مضت قال hanan fahad11:

#1215 - Cannot add foreign key constraint

عطاني كذا 


CREATE TABLE Orders_person (
    orr int NOT NULL,
    per int NOT NULL,

    PRIMARY KEY (orr,per),
CONSTRAINT cons_clinets
      FOREIGN KEY (orr) REFERENCES orders (OrderID)
     ON DELETE CASCADE   ON UPDATE CASCADE ,
    
    CONSTRAINT cons_shop
      FOREIGN KEY (per) REFERENCES persons (PersonID)
      ON DELETE CASCADE   ON UPDATE CASCADE 
    
);

 

تأكدي أن انواع حقول المعرّفات في الجدولين تماثل نفس النوع في جدول الربط، قد يكون المعرف من النوع INT UNSIGNED يجب أن يكون في جدول الربط من نفس النوع كالتالي

orr int UNSIGNED NOT NULL,
per int UNSIGNED NOT NULL,

 

رابط هذا التعليق
شارك على الشبكات الإجتماعية

انضم إلى النقاش

يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.

زائر
أجب على هذا السؤال...

×   لقد أضفت محتوى بخط أو تنسيق مختلف.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   جرى استعادة المحتوى السابق..   امسح المحرر

×   You cannot paste images directly. Upload or insert images from URL.

  • إعلانات

  • تابعنا على



×
×
  • أضف...