STERFIELD

【MySQL】予約語について

【MySQL】予約語について

今日はmysqlの予約語について、やさしい話をしましょう。

「予約語」と「識別子」

mysqlには、select、from、 insert、into、joinなどの特定語があります。それらを「予約語」といいます。
mysqlのテーブル名やカラム名といった「識別子」には、基本的に「予約語」が使えません※。

※「予約語」を「`」で囲んだら使えますが、ORMを用いる各言語のフレームワークが対応していない場合があるため、「予約語」を「識別子」として使うことはお勧めできません。

例えば、注文のテーブルを作ろうとして、テーブル名をorderと命名するとします。

ではSQL syntaxエラーが出ますが、

と書けば、syntaxエラーがでません。

mysqlの内部関数名はどうなる?

mysqlの内部関数名(例えば、count関数)は、「予約語」ではないので、「識別子」として使えます。
また、mysqlの内部関数を使うときは、その直後に「スペース」の使用は許可されていません。
なぜなら、直後に「スペース」を使うと、それが関数名か、もしくはテーブル名(カラム名)か分からなくなるからのです。

mysqlの予約語一覧

下記リンクからご覧いただけます。
http://dev.mysql.com/doc/refman/5.1/ja/reserved-words.html

Author Profile

著者近影

スターフィールド編集部

SHARE

合わせて読みたい