237

我在 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 表格使永久链接在表格中唯一。

4

3 回答 3

350

我从 PostgreSQL 文档中弄清楚了,确切的语法是:

ALTER TABLE the_table ADD CONSTRAINT constraint_name UNIQUE (thecolumn);

谢谢弗雷德。_

于 2009-01-22T15:22:19.710 回答
296

或者,让数据库使用以下命令自动分配约束名称:

ALTER TABLE foo ADD UNIQUE (thecolumn);
于 2011-09-04T03:26:35.203 回答
55

也可以创建超过 1 列的唯一约束:

ALTER TABLE the_table 
    ADD CONSTRAINT constraint_name UNIQUE (column1, column2);
于 2016-11-16T09:55:06.840 回答