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 中国語 Web サイトの他の関連記事を参照してください。