Saya punya tabel di PostgreSQL tempat skema terlihat seperti ini:
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
)
Sekarang saya ingin membuat permalink unik di seluruh tabel dengan ALTER-ing tabel. Adakah yang bisa membantu saya dengan ini?
TIA
sql
postgresql
unique-constraint
Baishampayan Ghose
sumber
sumber
create unique index on foo_table (permalink)
Jawaban:
Saya menemukan jawabannya dari dokumen PostgreSQL, sintaks yang tepat adalah:
Terima kasih Fred .
sumber
Atau, minta DB secara otomatis menetapkan nama kendala menggunakan:
sumber
mytable_mycolumn_key
saya cukup senang dengan itu :-)Anda juga dapat membuat batasan unik lebih dari 1 kolom:
sumber
ALTER TABLE actions ADD CONSTRAINT actions_unique_constraint UNIQUE (payload::text, name);
atauALTER TABLE actions ADD CONSTRAINT actions_unique_constraint UNIQUE ((payload::text), name);