MySQL Workbench 8.0.12 可能会自动生成包含“VISIBLE”的 CREATE UNIQUE INDEX 语句选项,MySQL Server 5.7 不支持该选项。这种不兼容性会导致语法错误。
在 CREATE UNIQUE INDEX 语句中使用 VISIBLE 创建唯一索引时会发生错误。例如:
CREATE UNIQUE INDEX `name_UNIQUE` ON `setting` (`code` ASC) VISIBLE;
MySQL Server 5.7 将返回以下错误:
Error in query (1064): Syntax error near 'VISIBLE' at line 1
语法差异源于 MySQL 版本不同。在 MySQL 8.0 及更高版本中,CREATE UNIQUE INDEX 的语法包含“VISIBLE”或“INVISIBLE”选项。但是,在 MySQL 5.7 中,不支持此选项。
在 MySQL Workbench 中禁用“VISIBLE”自动生成:
在 MySQL Workbench 中,导航至:
这会阻止 MySQL Workbench 在 CREATE UNIQUE INDEX 语句中自动生成“VISIBLE” .
替代方案:
如果无法升级到 MySQL 8.0,请手动从 CREATE UNIQUE INDEX 语句中删除“VISIBLE”选项。
以上是为什么在 CREATE UNIQUE INDEX 语句中使用'VISIBLE”时 MySQL Workbench 会生成语法错误?的详细内容。更多信息请关注PHP中文网其他相关文章!