skillup

技術ブログ

Database

MySQLの大文字、小文字問題について

投稿日:2016年1月29日 更新日:

MySQLでテーブルを作る際にカラムに重複を許さない制約(unique)を振ることがあると思います。

数字の場合は問題ないのですが、文字列の場合、なんと英語の大文字と小文字が区別されません。

つまりaaaというデータを入力していた場合、AAAがユニーク制約に引っかかってしまい、入力できないのです。

回避するためにはカラムにBinary属性を付与させてあげればOKです。

書き方は以下の通りです。

参考リンク

MySQLのunique属性で大文字や小文字が区別されない問題を解決

-Database
-

執筆者:


comment

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

関連記事

no image

cakePHPでのマイグレーション

開発を続けているとデータベースのカラムの構造が変更するってことはしょっちゅうですが、管理がいい加減だとメンバー間でテーブルの構造が変わっていたり、本番と開発で違ってくるなどのトラブルが続出します。 そ …

no image

オプティマイザと実行計画

データベースがSQLを受け取って処理を実行する前には下記のような段階があります。 Contents1 パーサー2 オプティマイザ3 カタログマネージャー4 テーブルからデータの取得5 参考リンク パー …

no image

NULLについて

「達人に学ぶSQL徹底指南書」を読み進めていきましたがNULLについていろいろ書いてあるのでメモリます。 Contents1 NULLには未知と適用不能の2パターンがある2 = NULL が使えず I …

no image

外部結合 応用編

本日は「達人に学ぶSQL徹底指南書」の外部結合の応用編です。 下記のような3つのテーブルがあるとします。例によってここを使わしてもらってます。 tblsex sex_cd | sex —& …

no image

cakeでのトランザクション、コミット、ロールバック

cakePHP(2.X系)でのトランザクション、コミット、ロールバックについて。 cakePHPでトランザクションを書ける場合、Model内に [crayon-609c906688cd07863643 …