2015-11-30 89 views
0

enter image description here我在學校爲一個項目製作一個數據庫,我住在荷蘭,所以這段sql中的命名將是荷蘭語,請原諒。SQL錯誤1215無法添加外鍵約束?

我遇到的問題是,我似乎無法創建一個外鍵,我不明白爲什麼。

這是一段sql給我麻煩,我正在使用MySQL。

Executing SQL script in server 

錯誤:錯誤1215:無法添加外鍵約束

SQL代碼:


-- Table `Producten`.`Bestelregel` 
    -- ----------------------------------------------------- 
    CREATE TABLE IF NOT EXISTS `Producten`.`Bestelregel` (
     `Bestelnr` INT NOT NULL COMMENT '', 
     `Productnr` INT NOT NULL COMMENT '', 
     `Aantal` INT NOT NULL COMMENT '', 
     PRIMARY KEY (`Bestelnr`, `Productnr`) COMMENT '', 
     INDEX `Product_idx` (`Productnr` ASC) COMMENT '', 
     CONSTRAINT `Product` 
     FOREIGN KEY (`Productnr`) 
     REFERENCES `Producten`.`Product` (`nr`) 
     ON DELETE NO ACTION 
     ON UPDATE NO ACTION, 
     CONSTRAINT `Bestelling` 
     FOREIGN KEY (`Bestelnr`) 
     REFERENCES `Producten`.`Bestelling` (`Nr`) 
     ON DELETE NO ACTION 
     ON UPDATE NO ACTION) 
    ENGINE = InnoDB 

我已經閱讀此相同的問題的一些其他的問題,但我無法找到任何爲我工作的,有人建議我的主鍵和外鍵必須是兩個約束都是相同的類型。

另外還有一點需要注意的是,這是一個從mysql工作臺中的圖中轉發的工程腳本。

This is the diagram.

還設置FOREIGN_KEY_CHECKS = 0已經是我的SQL腳本的頂部。

+0

顯示錶定義的所有引用的表 – Mihai

+0

確保即:引擎是相同的,並且你沒有任何相同名稱的限制 – Mihai

回答

0

集FOREIGN_KEY_CHECKS =您的SQL文件

集FOREIGN_KEY_CHECKS =您的SQL文件1個寫入底部寫入0頂

我認爲它可以幫助您

相關問題