Tôi có bảng sau:SQL: ERROR 1005: Không thể tạo bảng 'obl2.itemsubjects' (errno: 121)
CREATE TABLE `OBL2`.`item` (
`itemID` INT NOT NULL AUTO_INCREMENT ,
`itemName` VARCHAR(45) NOT NULL ,
PRIMARY KEY (`itemID`) ,
INDEX `itemName` (`itemName` ASC));
CREATE TABLE `OBL2`.`subject` (
`subjectID` INT NOT NULL ,
`subjectName` VARCHAR(45) NOT NULL ,
PRIMARY KEY (`subjectID`));
Bây giờ kể từ khi kết nối được nhiều nhiều, mỗi mục có thể có nhiều chủ đề và mỗi chủ đề có thể liên quan đến nhiều mục - Tôi muốn đặt một bảng kết nối. Đây là mã của tôi:
CREATE TABLE `OBL2`.`itemsubjects` (
`itemID` INT NOT NULL ,
`subjectID` INT NOT NULL ,
PRIMARY KEY (`itemID`, `subjectID`) ,
INDEX `itemID_idx` (`itemID` ASC) ,
INDEX `subjectID_idx` (`subjectID` ASC) ,
CONSTRAINT `itemID`
FOREIGN KEY (`itemID`)
REFERENCES `OBL2`.`item` (`itemID`)
ON DELETE CASCADE
ON UPDATE CASCADE,
CONSTRAINT `subjectID`
FOREIGN KEY (`subjectID`)
REFERENCES `OBL2`.`subject` (`subjectID`)
ON DELETE CASCADE
ON UPDATE CASCADE);
nhưng vì lý do nào đó mã của bảng thứ ba không được chấp nhận. tôi nhận được một thông báo lỗi:
ERROR 1005: Không thể tạo bảng 'obl2.itemsubjects' (errno: 121)
Tôi đã đọc về lỗi trên internet và nó nói đó là một vấn đề đã biết của MYSQL nhưng không có giải pháp nào.
Mọi suy nghĩ?
Bạn có thể thử để chèn một số dữ liệu để hai bảng đầu tiên trong kịch bản và sau đó thêm tạo bảng cho bảng thứ ba? – bonCodigo
hey bonCondigo, tôi đã thử ngay bây giờ .. vẫn còn lỗi tương tự. Tôi phải nói rằng tôi đã làm điều tương tự trước đó với các tác giả và nó hoạt động hoàn hảo. tôi có thể hiểu tại sao với các đối tượng thất bại. –
Bạn có phải cho biết tên bảng rõ ràng với db không? – bonCodigo