2016-03-03 67 views
0

SQL查询:MySQL的外键约束问题,当

CREATE TABLE IF NOT EXISTS `Rio VAMOOS Database`.`Card` (
    `Card_id` INT(8) NOT NULL, 
    `Card_start_date` DATETIME NOT NULL, 
    `Card_end_date` DATETIME NOT NULL, 
    `State_validity` VARCHAR(8) NOT NULL, 
    `Official_Official_id` INT(8) NOT NULL, 
    PRIMARY KEY (`Card_id`), 
    INDEX `fk_Card_State1_idx` (`State_validity` ASC), 
    INDEX `fk_Card_Official1_idx` (`Official_Official_id` ASC), 
    CONSTRAINT `fk_Card_State1` 
    FOREIGN KEY (`State_validity`) 
    REFERENCES `Rio VAMOOS Database`.`State` (`Card_id`) 
    ON DELETE NO ACTION 
    ON UPDATE NO ACTION, 
    CONSTRAINT `fk_Card_Official1` 
    FOREIGN KEY (`Official_Official_id`) 
    REFERENCES `Rio VAMOOS Database`.`Official` (`Official_id`) 
    ON DELETE NO ACTION 
    ON UPDATE NO ACTION) 
ENGINE = InnoDB; 

MySQL表示:文件

1215 - 不能添加外键约束

+0

我们似乎无法弄清楚为什么我们在导入时得到错误代码,我们已经多次检查过,但找不到问题。任何帮助将非常感激!! –

+0

检查外键是否正常,'State_validity'需要与'State'中的'Card_id'具有相同的类型。 'Official_Official_id'和'Official_id'一样 – Sal00m

回答

0

有也应该是表Rio VAMOOS DatabaseStateRio VAMOOS DatabaseOfficial。没有这些表格,您将在尝试运行此查询时获得ERROR 1215 (HY000): Cannot add foreign key constraint

您应该检查这两个表是否在Rio VAMOOS Database之前导入。 Card