2016-07-27 4 views
0

現在、アカウントモジュールで作業しています。Postgresql - テーブル内の1つの行のみに対する制約で、他のフラグにフラグを持たせることはできません。

  1. アカウントID(文字列)
  2. デビット量()
  3. クレジット量
  4. 未確認量
  5. は、マスターアカウントです(ブール)
  6. CUSTOMER_ID:私は、次の列として1つのアカウントテーブルを持っています(1対1)のカスタマーテーブル

私は1つのマスト他のマスターアカウントをテーブルに追加することを制限することができます。

答えて

0
ALTER TABLE account 
ADD CONSTRAINT account_unique UNIQUE (account_id); 

私はPostgresはあなたのaccountテーブルが既にaccount_idエントリが重複している場合は、制約を追加することはできませんと信じています。これらの重複が存在する場合は、最初に削除してからALTER TABLEを実行してください。すでに重複している場合は、何らかのロジックを提供している場合は、それらを削除するクエリを与えることができます。

関連する問題