MySQL错误1215:无法添加外键约束;

时间:2017-11-15 16:20:40

标签: mysql foreign-keys mysql-workbench

我有一项任务是建立一个关于铁路车站的数据库。 得到了一个错误1215.我检查了所有相似的参数,它们都匹配。但是,该程序不起作用。 我的错是什么?  请帮忙。 这是我的模范部分:

-- Table `mydb`.`WayOut`
-- -----------------------------------------------------
CREATE TABLE IF NOT EXISTS `mydb`.`WayOut` (
  `WayOutNumberr` INT NOT NULL,
  UNIQUE INDEX `WayOutNumber_UNIQUE` (`WayOutNumberr` ASC),
  PRIMARY KEY (`WayOutNumberr`))
ENGINE = InnoDB;
-- Table `mydb`.`TrainOut`
-- -----------------------------------------------------
CREATE TABLE IF NOT EXISTS `mydb`.`TrainOut` (
  `NumberTrainOutRec` INT NOT NULL,
  `WayOutNumber` INT NOT NULL,
  `DateOut` VARCHAR(45) NOT NULL,
  `TrainNumber` INT NOT NULL,
  PRIMARY KEY (`NumberTrainOutRec`, `WayOutNumber`, `TrainNumber`),
  UNIQUE INDEX `WayOutNumber_UNIQUE` (`WayOutNumber` ASC),
  CONSTRAINT `WayOutNumber`
    FOREIGN KEY (`WayOutNumber`)
    REFERENCES `mydb`.`WayOut` (`WayOutNumberr`)
    ON DELETE CASCADE
    ON UPDATE CASCADE)
ENGINE = InnoDB;

这是一个错误代码 什么是决定?(对不起我的英文)

ERROR: Error 1215: Cannot add foreign key constraint
SQL Code:
        -- -----------------------------------------------------
        -- Table `mydb`.`TrainOut`
        -- -----------------------------------------------------
        CREATE TABLE IF NOT EXISTS `mydb`.`TrainOut` (
          `NumberTrainOutRec` INT NOT NULL,
          `WayOutNumber` INT NOT NULL,
          `DateOut` VARCHAR(45) NOT NULL,
          `TrainNumber` INT NOT NULL,
          PRIMARY KEY (`NumberTrainOutRec`, `WayOutNumber`, `TrainNumber`),
          UNIQUE INDEX `WayOutNumber_UNIQUE` (`WayOutNumber` ASC),
          CONSTRAINT `WayOutNumber`
            FOREIGN KEY (`WayOutNumber`)
            REFERENCES `mydb`.`WayOut` (`WayOutNumberr`)
            ON DELETE CASCADE
            ON UPDATE CASCADE)
        ENGINE = InnoDB

SQL script execution finished: statements: 9 succeeded, 1 failed

Fetching back view definitions in final form.
Nothing to fetch

1 个答案:

答案 0 :(得分:0)

从CONSTRAINT中删除数据库引用。 TrainOut已在mydb数据库中创建。

REFERENCES `WayOut` (`WayOutNumberr`)