如何在mysql上解决这个正向工程问题?

3yhwsihp  于 2021-06-17  发布在  Mysql
关注(0)|答案(0)|浏览(330)

我正在尝试对我所做的erd进行正向工程,但是正向工程过程将我作为输出给出一个错误。 ERROR: Error 3734: Failed to add the foreign key constraint. Missing column 'straatid' for constraint 'verzinzelf3' in the referenced table 'locatie' .
但这很奇怪,因为列名 straatid 事实上在table上 Locatie . 表与表之间的关系 Team 以及 LocatieLocatie 以及 Plant ,但似乎我只得到了表的关系之间的一个错误 Locatie 以及 Plant . 我真的不知道怎么解决这个错误。有人能帮我解决这个问题吗?。
这是对应该执行的sql脚本的检查:

  1. -- MySQL Workbench Forward Engineering
  2. CREATE SCHEMA IF NOT EXISTS `mydb` DEFAULT CHARACTER SET utf8 ;
  3. USE `mydb` ;
  4. -- -----------------------------------------------------
  5. -- Table `mydb`.`table1`
  6. -- -----------------------------------------------------
  7. CREATE TABLE IF NOT EXISTS `mydb`.`table1` (
  8. `StraatID` VARCHAR(45) NOT NULL,
  9. `Straat` VARCHAR(45) NULL,
  10. `Latitude` VARCHAR(45) NULL,
  11. `Longitude` VARCHAR(45) NULL,
  12. PRIMARY KEY (`StraatID`))
  13. ENGINE = InnoDB;
  14. -- -----------------------------------------------------
  15. -- Table `mydb`.`Locatie`
  16. -- -----------------------------------------------------
  17. CREATE TABLE IF NOT EXISTS `mydb`.`Locatie` (
  18. `Huisnr` VARCHAR(45) NOT NULL,
  19. `StraatID` VARCHAR(45) NOT NULL,
  20. `Toevoeging` VARCHAR(45) NULL,
  21. PRIMARY KEY (`Huisnr`, `StraatID`),
  22. UNIQUE INDEX `StraatID_UNIQUE` (`StraatID` ASC) VISIBLE,
  23. UNIQUE INDEX `Huisnr_UNIQUE` (`Huisnr` ASC) VISIBLE,
  24. INDEX `verzinzelf2_idx` (`StraatID` ASC) VISIBLE,
  25. CONSTRAINT `verzinzelf2`
  26. FOREIGN KEY (`StraatID`)
  27. REFERENCES `mydb`.`table1` (`StraatID`)
  28. ON DELETE NO ACTION
  29. ON UPDATE NO ACTION)
  30. ENGINE = InnoDB;
  31. -- -----------------------------------------------------
  32. -- Table `mydb`.`Team`
  33. -- -----------------------------------------------------
  34. CREATE TABLE IF NOT EXISTS `mydb`.`Team` (
  35. `Teamnr` INT NOT NULL,
  36. `StraatID` VARCHAR(45) NOT NULL,
  37. `Huisnr` VARCHAR(45) NOT NULL,
  38. `StraatID1` VARCHAR(45) NOT NULL,
  39. PRIMARY KEY (`Teamnr`),
  40. INDEX `verzinzelf5_idx` (`Huisnr` ASC, `StraatID1` ASC) VISIBLE,
  41. CONSTRAINT `verzinzelf5`
  42. FOREIGN KEY (`Huisnr` , `StraatID1`)
  43. REFERENCES `mydb`.`Locatie` (`Huisnr` , `StraatID`)
  44. ON DELETE NO ACTION
  45. ON UPDATE NO ACTION)
  46. ENGINE = InnoDB;
  47. -- -----------------------------------------------------
  48. -- Table `mydb`.`Eigenaar`
  49. -- -----------------------------------------------------
  50. CREATE TABLE IF NOT EXISTS `mydb`.`Eigenaar` (
  51. `Eigenaar` INT NOT NULL,
  52. PRIMARY KEY (`Eigenaar`))
  53. ENGINE = InnoDB;
  54. -- -----------------------------------------------------
  55. -- Table `mydb`.`Plant`
  56. -- -----------------------------------------------------
  57. CREATE TABLE IF NOT EXISTS `mydb`.`Plant` (
  58. `Plant beschrijving` VARCHAR(45) NOT NULL,
  59. `Kaartlokatie` VARCHAR(45) NOT NULL,
  60. `Oppervlakte` VARCHAR(45) NOT NULL,
  61. `Eigenaar` INT NOT NULL,
  62. `Huisnr` VARCHAR(45) NOT NULL,
  63. `StraatID` VARCHAR(45) NOT NULL,
  64. PRIMARY KEY (`Plant beschrijving`, `Kaartlokatie`, `Oppervlakte`),
  65. INDEX `verzinzelf4_idx` (`Eigenaar` ASC) VISIBLE,
  66. INDEX `verzinzelf3_idx` (`Huisnr` ASC, `StraatID` ASC) VISIBLE,
  67. CONSTRAINT `verzinzelf4`
  68. FOREIGN KEY (`Eigenaar`)
  69. REFERENCES `mydb`.`Eigenaar` (`Eigenaar`)
  70. ON DELETE NO ACTION
  71. ON UPDATE NO ACTION,
  72. CONSTRAINT `verzinzelf3`
  73. FOREIGN KEY (`Huisnr` , `StraatID`)
  74. REFERENCES `mydb`.`Locatie` (`Huisnr` , `StraatID`)
  75. ON DELETE NO ACTION
  76. ON UPDATE NO ACTION)
  77. ENGINE = InnoDB;
  78. -- -----------------------------------------------------
  79. -- Table `mydb`.`Meting`
  80. -- -----------------------------------------------------
  81. CREATE TABLE IF NOT EXISTS `mydb`.`Meting` (
  82. `Teamnr` INT NOT NULL,
  83. `Plant` VARCHAR(45) NOT NULL,
  84. `Meetsoort` VARCHAR(45) NULL,
  85. PRIMARY KEY (`Teamnr`, `Plant`),
  86. INDEX `verzinzelf1_idx` (`Plant` ASC) VISIBLE,
  87. INDEX `verzinzelf_idx` (`Teamnr` ASC) VISIBLE,
  88. CONSTRAINT `verzinzelf`
  89. FOREIGN KEY (`Teamnr`)
  90. REFERENCES `mydb`.`Team` (`Teamnr`)
  91. ON DELETE NO ACTION
  92. ON UPDATE NO ACTION,
  93. CONSTRAINT `verzinzelf1`
  94. FOREIGN KEY (`Plant`)
  95. REFERENCES `mydb`.`Plant` (`Plant beschrijving`)
  96. ON DELETE NO ACTION
  97. ON UPDATE NO ACTION)
  98. ENGINE = InnoDB;


以及完整的错误消息:

  1. Executing SQL script in server
  2. ERROR: Error 3734: Failed to add the foreign key constraint. Missing column 'straatid' for constraint 'verzinzelf3' in the referenced table 'locatie'
  3. SQL Code:
  4. -- -----------------------------------------------------
  5. -- Table `mydb`.`Plant`
  6. -- -----------------------------------------------------
  7. CREATE TABLE IF NOT EXISTS `mydb`.`Plant` (
  8. `Plant beschrijving` VARCHAR(45) NOT NULL,
  9. `Kaartlokatie` VARCHAR(45) NOT NULL,
  10. `Oppervlakte` VARCHAR(45) NOT NULL,
  11. `Eigenaar` INT NOT NULL,
  12. `Huisnr` VARCHAR(45) NOT NULL,
  13. `StraatID` VARCHAR(45) NOT NULL,
  14. PRIMARY KEY (`Plant beschrijving`, `Kaartlokatie`, `Oppervlakte`),
  15. INDEX `verzinzelf4_idx` (`Eigenaar` ASC) VISIBLE,
  16. INDEX `verzinzelf3_idx` (`Huisnr` ASC, `StraatID` ASC) VISIBLE,
  17. CONSTRAINT `verzinzelf4`
  18. FOREIGN KEY (`Eigenaar`)
  19. REFERENCES `mydb`.`Eigenaar` (`Eigenaar`)
  20. ON DELETE NO ACTION
  21. ON UPDATE NO ACTION,
  22. CONSTRAINT `verzinzelf3`
  23. FOREIGN KEY (`Huisnr` , `StraatID`)
  24. REFERENCES `mydb`.`Locatie` (`Huisnr` , `StraatID`)
  25. ON DELETE NO ACTION
  26. ON UPDATE NO ACTION)
  27. ENGINE = InnoDB
  28. SQL script execution finished: statements: 9 succeeded, 1 failed
  29. Fetching back view definitions in final form.
  30. Nothing to fetch

暂无答案!

目前还没有任何答案,快来回答吧!

相关问题