简体   繁体   English

MYSQL Workbench-错误:错误1215:无法添加外键约束

[英]MYSQL Workbench - ERROR: Error 1215: Cannot add foreign key constraint

I am trying to forward engineer a database on MySQL Workbench, but I continually am getting this error message. 我正在尝试对MySQL Workbench上的数据库进行正向工程设计,但是我一直在收到此错误消息。 I feel as though it is most likely an issue with the structure of my relationships, but I cannot find a discrepancy. 我觉得这很可能是我的人际关系问题,但我找不到差异。

Here is an image of the schema diagram. 这是模式图的图像。 这是模式图的图像。

Here is the error message I am receiving: 这是我收到的错误消息:

    Executing SQL script in server
ERROR: Error 1215: Cannot add foreign key constraint
SQL Code:
        -- -----------------------------------------------------
        -- Table `bturpin`.`THREAD`
        -- -----------------------------------------------------
        CREATE TABLE IF NOT EXISTS `bturpin`.`THREAD` (
          `id` INT NOT NULL AUTO_INCREMENT,
          `answer` DOUBLE NULL,
          `comment` VARCHAR(255) NULL,
          `test_subcategory_name` VARCHAR(45) NULL,
          `RATING_id` INT NOT NULL,
          `RATING_INSTRUCTOR_id` VARCHAR(30) NOT NULL,
          `RATING_INSTRUCTOR_LESSON_title` VARCHAR(45) NOT NULL,
          `RATING_INSTRUCTOR_LESSON_COURSE_num` VARCHAR(15) NOT NULL,
          `RATING_RATER_id` VARCHAR(30) NOT NULL,
          PRIMARY KEY (`id`, `RATING_id`, `RATING_INSTRUCTOR_id`, `RATING_INSTRUCTOR_LESSON_title`, `RATING_INSTRUCTOR_LESSON_COURSE_num`, `RATING_RATER_id`),
          INDEX `fk_THREAD_RATING1_idx` (`RATING_id` ASC, `RATING_INSTRUCTOR_id` ASC, `RATING_INSTRUCTOR_LESSON_title` ASC, `RATING_INSTRUCTOR_LESSON_COURSE_num` ASC, `RATING_RATER_id` ASC),
          CONSTRAINT `fk_THREAD_RATING1`
            FOREIGN KEY (`RATING_id` , `RATING_INSTRUCTOR_id` , `RATING_INSTRUCTOR_LESSON_title` , `RATING_INSTRUCTOR_LESSON_COURSE_num` , `RATING_RATER_id`)
            REFERENCES `bturpin`.`RATING` (`id` , `INSTRUCTOR_id` , `INSTRUCTOR_LESSON_title` , `INSTRUCTOR_LESSON_COURSE_num` , `RATER_id`)
            ON DELETE NO ACTION
            ON UPDATE NO ACTION)
        ENGINE = InnoDB

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

Fetching back view definitions in final form.
Nothing to fetch

Try forwarding in this order : 尝试按此顺序转发:

  1. Manually create the fields which must have a foreign key constraint in MySQL WB 在MySQL WB中手动创建必须具有外键约束的字段
  2. Forward engineer to your DB 将工程师转发到您的数据库
  3. Manually create the foreign key constraints in MySQL WB 在MySQL WB中手动创建外键约束
  4. Forward engineer angain 前锋工程师

You may also consider using only integer foreign key. 您也可以考虑仅使用整数外键。

This seems to be a MySQL Workbench issue with foreign key on non integer key. 这似乎是MySQL Workbench问题,其中非整数键上带有外键。

Source : Error 1215: Cannot add foreign key constraint 源: 错误1215:无法添加外键约束

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM