【MySQL】予約語に注意!

PHPとMySQLを連携させてWEBアプリを開発している時、SQLクエリが通らずエラーを返してくることがあります。

たいていは、SQLの構文を間違えていたりするのですが、正しい構文でもエラーを返す場合があります。

その一つが、MySQLの予約語を気づかずに使っているケースです。

たとえば、テーブルのカラム(フィールド)に、key やfromやtoなどを使用するとSQLクエリはエラーを返します。

理由は、それらの語句がMySQLの予約語だからです。構文が正しいはずなのにSQLクエリがエラーになる場合には当該フレーズが予約語でないか確認してみると問題の解決につながります。

MySQLには、驚くほどたくさんの予約語があります。

下のリンクはMySQL5の予約語(公式マニュアル)です。

http://dev.mysql.com/doc/refman/5.1/ja/reserved-words.html

ざっと見た感じ、200語句くらいありそうです。

もっとも、公式マニュアルを読むと

予約語は引用符で囲まれた場合、識別子として使用できます。

と説明があり、予約語を使うテクニックもあるようです。

ただ、トラブル回避のため、はじめから予約語を使うのは避けたほうが無難だと思います。

カテゴリー: SQL パーマリンク

コメントを残す

メールアドレスが公開されることはありません。