ฉันได้สร้างตารางใน MySQL Workbench ดังที่แสดงด้านล่าง:
ตาราง ORDRE:
CREATE TABLE Ordre (
OrdreID INT NOT NULL,
OrdreDato DATE DEFAULT NULL,
KundeID INT DEFAULT NULL,
CONSTRAINT Ordre_pk PRIMARY KEY (OrdreID),
CONSTRAINT Ordre_fk FOREIGN KEY (KundeID) REFERENCES Kunde (KundeID)
)
ENGINE = InnoDB;
โต๊ะ PRODUKT:
CREATE TABLE Produkt (
ProduktID INT NOT NULL,
ProduktBeskrivelse VARCHAR(100) DEFAULT NULL,
ProduktFarge VARCHAR(20) DEFAULT NULL,
Enhetpris INT DEFAULT NULL,
CONSTRAINT Produkt_pk PRIMARY KEY (ProduktID)
)
ENGINE = InnoDB;
และโต๊ะ ORDRELINJE:
CREATE TABLE Ordrelinje (
Ordre INT NOT NULL,
Produkt INT NOT NULL,
AntallBestilt INT DEFAULT NULL,
CONSTRAINT Ordrelinje_pk PRIMARY KEY (Ordre, Produkt),
CONSTRAINT Ordrelinje_fk FOREIGN KEY (Ordre) REFERENCES Ordre (OrdreID),
CONSTRAINT Ordrelinje_fk1 FOREIGN KEY (Produkt) REFERENCES Produkt (ProduktID)
)
ENGINE = InnoDB;
ดังนั้นเมื่อฉันพยายามแทรกค่าลงในORDRELINJE
ตารางฉันจะได้รับ:
รหัสข้อผิดพลาด: 1452 ไม่สามารถเพิ่มหรืออัปเดตแถวลูกได้: ข้อ จำกัด ของคีย์ภายนอกล้มเหลว (
srdjank
.Ordrelinje
, CONSTRAINTOrdrelinje_fk
FOREIGN KEY (Ordre
) การอ้างอิงOrdre
(OrdreID
))
ฉันเคยเห็นโพสต์อื่น ๆ ในหัวข้อนี้ แต่โชคไม่ดี ฉันกำลังดูแลบางอย่างหรือมีความคิดว่าจะทำอย่างไร?