使用 MySQL Workbench 时出现错误消息“Syntax error close 'VISIBLE' at line 1”自动生成的 CREATE UNIQUE INDEX 语句。此问题源于 MySQL 服务器版本之间的语法差异。
原因:
MySQL Workbench 8.0.12 自动生成带有 VISIBLE 选项的 CREATE UNIQUE INDEX 语句,兼容 MySQL 服务器版本 8.0。但是,如果您使用的是早期版本的 MySQL(例如 5.7),则无法识别此选项,从而导致语法错误。
语法差异:
在 MySQL 服务器版本 8.0 中,CREATE INDEX 的语法包含 VISIBLE 索引选项:
CREATE [UNIQUE | FULLTEXT | SPATIAL] INDEX index_name [index_type] ON tbl_name (key_part,...) [index_option] [algorithm_option | lock_option] ... index_option: KEY_BLOCK_SIZE [=] value | index_type | WITH PARSER parser_name | COMMENT 'string' | {VISIBLE | INVISIBLE}
在 MySQL 服务器版本 5.7 中,此 VISIBLE 选项不可用:
CREATE [UNIQUE | FULLTEXT | SPATIAL] INDEX index_name [index_type] ON tbl_name (key_part,...) [index_option] [algorithm_option | lock_option] ... index_option: KEY_BLOCK_SIZE [=] value | index_type | WITH PARSER parser_name | COMMENT 'string'
解决方案:
要解决此问题,您有两个选择:
以上是为什么我在 CREATE UNIQUE INDEX 语句中出现'VISIBLE”语法错误?的详细内容。更多信息请关注PHP中文网其他相关文章!