11

ユーザー名が存在する場合、大文字と小文字が異なる重複したユーザー名を作成できないように、SQL テーブルのユーザー名varcharに制約を追加したいと考えています。これどうやってするの?ありがとう

編集:
私は PostgreSQL を使用しています。構文に関する少しのヘルプをいただければ幸いです。

4

3 に答える 3

23

ドキュメントから

CREATE UNIQUE INDEX lower_title_idx ON films ((lower(title)));
于 2009-05-02T06:59:04.560 に答える
4

PostgreSQL 8.4 (現在はベータ版) では、大文字と小文字を区別しない text typeが使用されることに注意してください。

于 2009-05-03T18:39:18.720 に答える
4

テーブルがまだ入力されていない場合は、挿入を行う前に標準の大文字または小文字に変換し、フィールドを主キーにする (または一意の制約を設定する) ことを検討してください。ユーザーが指定したケースで自分のユーザー ID を確認したい場合、これはデータベース内の別の列である可能性があります。

更新: 更新されたタグに基づいて、特定の DBMS への依存度が低いソリューションとして提案したいと思います。

于 2009-05-02T05:04:49.607 に答える