2016-04-05 57 views
0

當我創建數據庫時,創建此數據庫的「主」表時遇到了一些困難。在創建數據庫時:錯誤代碼:1215.無法添加外鍵約束

我認爲外鍵和主鍵之間存在類型差異,但沒有。

那麼,任何人都可以幫我嗎?必須有一些我忽略的東西,但我找不到問題。

[code] 
-- ----------------------------------------------------- 
-- Table `boat`.`terms_and_conditions` 
-- ----------------------------------------------------- 
CREATE TABLE IF NOT EXISTS `boat`.`terms_and_conditions` (
    `Terms_And_Conditions_Id` INT NOT NULL, 
    `Terms_And_Conditions_Doc` VARCHAR(255) NULL DEFAULT NULL, 
    `Terms_And_Conditions_Date` DATE NULL DEFAULT NULL, 
    PRIMARY KEY (`Terms_And_Conditions_Id`)) 
ENGINE = InnoDB; 

-- ----------------------------------------------------- 
-- Table `boat`.`player` 
-- ----------------------------------------------------- 
CREATE TABLE IF NOT EXISTS `boat`.`player` (
    `Player_Id` INT NOT NULL, 
    `Player_Firstname` VARCHAR(45) NULL DEFAULT NULL, 
    `Player_Lastname` VARCHAR(45) NULL DEFAULT NULL, 
    `Player_Password` VARCHAR(45) NULL, 
    `Player_Budget` DOUBLE NULL, 
    `Terms_Id` INT NOT NULL, 
    PRIMARY KEY (`Player_Id`), 
    INDEX `fk_player_terms_and_conditions1_idx` (`Terms_Id` ASC), 
    CONSTRAINT `fk_player_player_result1` 
    FOREIGN KEY (`Player_Id`) 
    REFERENCES `boat`.`player_result` (`Player_Id`) 
    ON DELETE NO ACTION 
    ON UPDATE NO ACTION, 
    CONSTRAINT `fk_player_supervisor_player1` 
    FOREIGN KEY (`Player_Id`) 
    REFERENCES `boat`.`supervisor_player` (`Player_id`) 
    ON DELETE NO ACTION 
    ON UPDATE NO ACTION, 
    CONSTRAINT `fk_player_terms_and_conditions1` 
    FOREIGN KEY (`Terms_Id`) 
    REFERENCES `boat`.`terms_and_conditions` (`Terms_And_Conditions_Id`) 
    ON DELETE NO ACTION 
    ON UPDATE NO ACTION) 
ENGINE = InnoDB; 
+1

您確定在嘗試將外鍵添加到'terms_and_conditions'表時遇到錯誤嗎? 「player_result」和「supervisor_player」表是否存在?如果你嘗試在沒有'Terms_Id'外鍵的情況下創建'player'表,會發生什麼? – Igorovics

回答

0

問題出現在玩家表的主鍵中。它被配置爲像其他表格的外鍵一樣工作。

相關問題