Как установить сочетание двух столбцов, чтобы быть уникальным? - PullRequest
0 голосов
/ 26 октября 2010

У меня есть вопрос о моделировании БД, у меня есть таблица, созданная следующим образом:

CREATE TABLE "users_articles" 
  ("id"         INTEGER  PRIMARY KEY  NOT NULL,
   "article_id" INTEGER,
   "user_id"    INTEGER)
  1. Какой оператор изменит эту таблицу, чтобы комбинация article_id и user_id была уникальной?
  2. Какое утверждение говорит мне, если БД уже была изменена?

Спасибо

Markus

1 Ответ

1 голос
/ 26 октября 2010
  1. Вам необходимо создать уникальный индекс:

    CREATE UNIQUE INDEX unique_users_articles ON users_articles (article_id, user_id)

  2. Пожалуйста, уточните, зачем вам это нужно?
    UPDATE: Используйте IF NOT EXISTS, чтобы игнорировать создание индекса, если он уже существует:

    CREATE UNIQUE INDEX IF NOT EXISTS unique_users_articles ON users_articles (article_id, user_id)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...