Подтвердить что ты не робот

Как сделать ALTER в таблице PostgreSQL и сделать столбец уникальным?

У меня есть таблица в PostgreSQL, где схема выглядит так:

CREATE TABLE "foo_table" (
    "id" serial NOT NULL PRIMARY KEY,
    "permalink" varchar(200) NOT NULL,
    "text" varchar(512) NOT NULL,
    "timestamp" timestamp with time zone NOT NULL
)

Теперь я хочу сделать постоянную ссылку уникальной по таблице с помощью ALTER-ing таблицы. Может ли кто-нибудь помочь мне в этом?

ТИА

4b9b3361

Ответ 1

Я понял это из документов PostgreSQL, точный синтаксис:

ALTER TABLE the_table ADD CONSTRAINT constraint_name UNIQUE (thecolumn);

Спасибо Fred.

Ответ 2

Или, если БД автоматически назначает имя ограничения, используя:

ALTER TABLE foo ADD UNIQUE (thecolumn);

Ответ 3

Также возможно создать уникальное ограничение из более чем одного столбца:

ALTER TABLE the_table 
    ADD CONSTRAINT constraint_name UNIQUE (column1, column2);