MySQLはソートや比較のときに、英字の大文字小文字を区別しない
MySQLはデフォルトでは大文字区別を区別しない
参考:http://lgrobscrt.exblog.jp/361128/
そうだったのか。。めちゃめちゃはまった↓↓
PKに使うと、主キーの一意性違反でInsertすらできません。
対処法①
CREATE TABLEのときに大文字小文字を区別したいカラムに、BINARY属性を付けるだけのようです。
対処前
CREATE TABLE SampleTable ( ID CHAR(5) NOT NULL PRIMARY KEY );
対処後
CREATE TABLE SampleTable ( ID CHAR(5) BINARY NOT NULL PRIMARY KEY );
対処法②
ALTERの権限があるならば、一度PKを解除してBINARY属性を付与してPKを再定義してあげれば良い。
ALTER TABLE SampleTable DROP PRIMARY KEY; ALTER TABLE SampleTable MODIFY ID CHAR(5) BINARY PRIMARY KEY;
ダンプすると・・
↓のようになるようだ。
`ID` char(5) character set latin1 collate latin1_bin NOT NULL default ''