2016-07-27 1 views
0

В настоящее время работает над модулем учетных записей. У меня есть одна таблица счета как следующие столбцы:Postgresql - ограничение только для одной строки в таблице и не позволяет другим иметь флаг

  1. идентификатор учетной записи (String)
  2. Дебет Сумма()
  3. Сумма кредита
  4. неубранные количество
  5. Является ли основной счет (Boolean)
  6. customer_id (Один к одному) в таблице клиентов

Я хотел бы иметь только одну мачту er для этой таблицы и запретить другим пользователям добавлять в таблицу другую главную учетную запись.

ответ

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

Я считаю, что Postgres не позволит вам добавить ограничение, если ваш account таблица уже содержит повторяющиеся account_id записи. Если эти дубликаты существуют, вы должны удалить их сначала, прежде чем делать ALTER TABLE. Если у вас уже есть дубликаты, если вы предоставляете некоторую логику, возможно, мы можем дать вам запрос об их удалении.

Смежные вопросы