ユーザーアカウントのテーブルのログインIDで
login_name VARCHAR(256) NOT NULL UNIQUE
なんて指定でユニークキーを貼ったのはいいが、Case SensitiveなIDになってしまい、気が付いたら大文字小文字を使い分けられてgdgdになる
# だけど「はてな」はMySQLじゃなかったの?って知らないけど
# どちらにせよはてながPostgreSQLだとは思ってません。もしかしてDBM?;)
解決策は関数インデックスを使って
CREATE UNIQUE INDEX indexname ON usertable (lower(login_name));
とすると、「Ryo」があるとき「ryo」はINSERTできなくなります。
けど、これじゃ「Ryo」がINSERTできちゃうんで、CHECK句を使って
login_name VARCHAR(256) NOT NULL UNIQUE CHECK (login_name = lower(login_name))
ってのもいいかも。
-
ページ
-
検索
最近のコメント
- ソフトバンクの確定前パケット料金怖すぎて俺涙目 (1)
- kkamegawaからのコメント
- 突っ込みたくなるESSID (1)
- kkamegawaからのコメント
- Amazon EC2の電話番号確認 (2)
- ムッシュからのコメント
- GetSen XML-RPC API (2)
- keniからのコメント
- UIの難しさ (4)
- Buzzurlのランキングで恥ずかしめに・・・っ!(笑) (1)
- りょすけからのコメント
- RSSは生きてるんで、rsscloudのプラグインも入れてみたけど・・・ (2)
- りょすけからのコメント
- ソフトバンクの確定前パケット料金怖すぎて俺涙目 (1)
最近のエントリ
-
カテゴリー
- del.icio.us (2)
- IT関連 (223)
- ニュース・時事 (19)
- レクレーション (65)
- 雑記 (154)
-
アーカイブ