MySQLWorkbench正向工程错误

MySQLWorkbench forward engineering error

我正在 MySql Workbench 8.0 中开发一个模型,当我单击正向工程并尝试生成我的模型脚本时,我得到了

Executing SQL script in server
ERROR: Error 1064: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'VISIBLE,
  CONSTRAINT `fk_Compras_Personas`
    FOREIGN KEY (`persona_id`)
    R' at line 9
SQL Code:
        -- -----------------------------------------------------
        -- Table `bd_inventario2018_2`.`compras`
        -- -----------------------------------------------------
        CREATE TABLE IF NOT EXISTS `bd_inventario2018_2`.`compras` (
          `nmcompra` INT(11) NOT NULL,
          `persona_id` INT(11) NOT NULL,
          `fecompra` DATE NOT NULL,
          PRIMARY KEY (`nmcompra`, `persona_id`),
          INDEX `fk_Compras_Personas_idx` (`persona_id` ASC) VISIBLE,
          CONSTRAINT `fk_Compras_Personas`
            FOREIGN KEY (`persona_id`)
            REFERENCES `bd_inventario2018_2`.`personas` (`id`)
            ON DELETE NO ACTION
            ON UPDATE NO ACTION)
        ENGINE = InnoDB
        DEFAULT CHARACTER SET = utf8

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

Fetching back view definitions in final form.
Nothing to fetch

或者当我尝试同步我得到的模型时

Executing SQL script in server
ERROR: Error 1064: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'VISIBLE' at line 4
SQL Code:
        ALTER TABLE `bd_inventario2018_2`.`productos` 
        ADD COLUMN `anchetas_id` INT(11) NOT NULL AFTER `psventa`,
        ADD COLUMN `productoscol` VARCHAR(45) NOT NULL AFTER `anchetas_id`,
        ADD INDEX `fk_productos_Anchetas1_idx` (`anchetas_id` ASC) VISIBLE

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

Fetching back view definitions in final form.
Nothing to fetch

有人知道发生了什么事吗?这是一个自动过程,我不会覆盖任何东西,

谢谢

MySQL Workbench 正在为 MySQL 8 生成脚本(它支持新的不可见索引),您可能没有。

您需要指定您正在使用的 MySQL 版本,可以在 Model\Model Options\MySQL\Target MySQL Version 中,或者全局地在 Edit\Preferences\Modelling\MySQL\Target MySQL Version.

或者,您可以继续 MySQL Workbench GUI,编辑->首选项,然后建模->Mysql 并更改默认目标 MySQL。

我有同样的问题,使用版本 = 8.0.17。

如果在 "Foreign Key Options" 部分中未选择任何操作,则在建立关系时出现错误。确保选中 SQL 代中的跳过(当未选择任何操作时)。

这应该可以解决问题![​​=11=]