STERFIELD
開発ナレッジ2013.11.06

【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

WRITER

スターフィールド編集部

この著者の記事を見る

CONTACT

記事の内容について
相談したい方へ

実際の進め方は、状況を伺ってからご提案します。

2営業日以内にご返信します
資料ダウンロード無料相談に申し込む