skillup

技術ブログ

Database

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

投稿日:

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

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

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

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

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

参考リンク

https://colo-ri.jp/develop/2011/04/mysql-unique-lower-upper-case-problem.html

-Database
-

執筆者:


comment

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

関連記事

no image

CASE式のすすめ その3

本日もCASE式です。 下記のようなテーブル(studentclub)があるとします。 std_id | club_id | club_name | main_club_flg —&#82 …

no image

mysqlデータのCSV出力

ガチンコ塾のブログでもかいたのですが、行動力が大切だなーと思う今日この頃。 社長が熟練のJavaエンジニアで基本的に聞けば、基本的に解決することが多いのですが、外部の勉強会などにも出て情報収集の必要性 …

no image

MySQLでのlocalhostと127.0.0.1の違い

たまにMySQLでローカルのホストに接続する時に、localhostで接続するときと127.0.0.1で接続するときで挙動が違う(片方だとエラーになり、もう片方だとエラーにならない)などがあるのでちょ …

no image

sql_modeに関して

開発では動いていたのに本番ではint型のカラムで空白が入らない!みたいなエラーが出て、データベースにデータが入らないことが発覚し、調査をすることに・・・ sql_modeが原因でした・・・ sql_m …

no image

Firebaseについて

前回Lambdaに少し触れましたが、2019年6月現在、サーバーレスなアプリというものが活況(?)のようです。 大規模なアプリというと Webサーバー+RDB+サーバーサイドプログラミング言語 が必須 …