sql >> データベース >  >> RDS >> PostgreSQL

一意の列でnullを許可する

    これは誤解です。
    UNIQUE 制約は正確に あなたが欲しいもの。複数のNULL 値は、UNIQUEで定義された列に共存できます 。

    マニュアル:

    一般に、制約に含まれるすべての列の値が等しいテーブルに複数の行がある場合、一意性制約に違反します。ただし、この比較では、2つのヌル値は等しいとは見なされません。つまり、一意の制約が存在する場合でも、null値を含む重複行を格納することが可能です 制約された列の少なくとも1つ。この動作はSQL標準に準拠していますが、他のSQLデータベースがこの規則に従わない可能性があると聞いています。したがって、ポータブルを目的としたアプリケーションを開発する場合は注意が必要です。

    大胆な強調鉱山。

    文字タイプでは空の文字列('')を使用できることに注意してください )、これはではありません NULL 値であり、複数の行に入力された場合、他のnull以外の値と同じように一意の違反をトリガーします。



    1. Androidのバックアップ後にSqliteデータベースを復元する方法

    2. SSMSのntextまたはnvarchar(max)からすべてのテキストをどのように表示しますか?

    3. SQL Server 2016:データベースを復元する

    4. ジャンプしてテスト駆動データベース開発(TDDD)を開始