Как изменить таблицу 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
)

теперь я хочу сделать permalink уникальным по всей таблице, изменив таблицу. Кто-нибудь может мне помочь?

ТИА

3 ответов


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

ALTER TABLE the_table ADD CONSTRAINT constraint_name UNIQUE (thecolumn);

спасибо Фред.


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

ALTER TABLE foo ADD UNIQUE (thecolumn);

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

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