「’」と「`」は違う

いつもphpMyAdminに頼りっぱなしだと、いざというときに困ってしまうので、単純なデータベース操作のときくらいコマンドラインを使ってみようと思ったものの、何度やってもエラーになってしまう。

mysql> create database 'test_3' default character set utf8 collate utf8_general_ci;
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 ''test_3' default character set utf8 collate utf8_general_ci' at line 1

なんでだろう…。とりあえず教科書通りに大文字にしてみようか。

mysql> CREATE DATABASE 'test_3' DEFAULT CHARACTER SET UTF8 COLLATE UTF8_general_ci;
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 ''test_3' DEFAULT CHARACTER SET UTF8 COLLATE UTF8_general_ci' at line 1

うおー、なんでだ。エラーメッセージが”test_3…から始まっていると言うことは、ひとまず「create database」までは合っているわけだ。その後に何が…。

あきらめてphpMyAdminから実行して、「実行したSQL」の部分をじっと眺めて漸く気付いた。

正しい方

CREATE DATABASE `test_3` DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci;

間違っている方

CREATE DATABASE 'test_3' DEFAULT CHARACTER SET UTF8 COLLATE UTF8_general_ci;

データベース名を囲むチョンチョンが違う! これ、フォント指定の違いで'(Shift+7)が違う風に表示されているのかと思いきや、違う文字だった。
これ、`(Shift+@)だったんですねぇ…。

(今まで何でこの問題に突き当たらなかったかというと、コマンドラインで打つときはチョンを付けていなかったからのようです。付けなかったらそれはそれでOK。)

広告

About: dacelo


2 thoughts on “「’」と「`」は違う”

  1. Pingback: SiA

Leave a Reply

Your email address will not be published. Required fields are marked *