LoginSignup
0
0

More than 3 years have passed since last update.

MySQLで、indexに'key'を使ったらコンフリクトした

Last updated at Posted at 2020-04-19

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','青森県');

で解決。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0