【MySQL】テーブルカラムは大文字・小文字の区別が無いので注意が必要

とあるプログラム中で、テーブル作成では大文字でカラム名が定義されているカラムに対して、 データ取得(SELECT)で気が付かず小文字で書いてしまっていたのですが、 問題無く処理されていた様でした。
実は MySQL ではカラム名の記述で大文字・小文字の区別はしていないのです。

実際に処理を見てみます。 前回の記事で AUTO_INCREMENT に関することを書きましたが、そこでのテーブルを使用します。
テーブル作成のSQL文は以下の通りです。

このテーブルはカラムが大文字で宣言されていますが、以下カラムを小文字で取得する様にしてみます。

取得するカラム名が大文字、小文字のどちらであっても問題無く取得できます。

ただし、 PHP からデータを取得した時には、1行のデータを配列で扱いますが、 その時の指標として各カラム名を使ったりします。
PHP では配列の指標では大文字と小文字の区別されるため、どちらかに統一するほうが良いと思います。
(例えば $row["id"]$row["ID"] は異なります。)

■関連記事
【MySQL】テーブルカラムは大文字・小文字の区別が無いので注意が必要
【MySQL】テーブル作成時にカラムにAUTO_INCREMENTを設定する方法について
【MySQL】テーブルカラムに後からAUTO_INCREMENTを設定する方法について
【MySQL】文字列カラムに追加で更新する方法について(CONCAT)
【MySQL】既に存在するTABLEに複数カラムを位置指定で追加する方法について(ALTERTABLE)


楽天市場
コメント(0)