MYSQLで、indexにkeyを設定した時に、下記のInsertを実行しようとしたらエラーが発生。
INSERT INTO area_tag (id,key,name) VALUES (0,'jp_2','青森県');
エラー文としては、
ERROR 1064 (42000): 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 'key, name) VALUES (0,'青森県','jp_2')' at line 1
といったものだった。
当初は全く見当つかなかったが、()内のkeyの位置を移動させると、それに伴いエラー文のnearから先の範囲が変わっていたので、keyに原因がありそうだと予想。
調べてみると、同じようなケースを発見。
https://stackoverflow.com/questions/54194548/mysql-insert-error-with-column-name-is-key
どうやら、MySQLで定義済みのものとコンフリクトしてたらしく、``で囲めばOKらしい。
なので、
INSERT INTO area_tag (id,`key`,name) VALUES (0,'jp_2','青森県');
で解決。