Der kan kun være én primær nøgle pr. tabel - som angivet med ordet "primær".
Du kan have yderligere UNIQUE
kolonner
som:
CREATE TABLE test(
sl_no int PRIMARY KEY, -- NOT NULL due to PK
emp_id int UNIQUE NOT NULL,
emp_name text,
emp_addr text
);
Kolonner, der er (en del af) PRIMARY KEY
er markeret med NOT NULL
automatisk.
Eller brug en tabelbegrænsning i stedet for en kolonnebegrænsning til at oprette en enkelt flerkolonne primær nøgle . Dette er semantisk forskelligt fra ovenstående:Nu kun kombinationen af begge kolonner skal være unikke, hver kolonne kan indeholde dubletter for sig.
CREATE TABLE test(
sl_no int, -- NOT NULL due to PK below
emp_id int , -- NOT NULL due to PK below
emp_name text,
emp_addr text,
PRIMARY KEY (sl_no, emp_id)
);
Flerkolonne UNIQUE
begrænsninger er også mulige.
Til side:Brug ikke CaMeL-case-identifikatorer i Postgres. Brug lovlige identifikatorer med små bogstaver, så du aldrig behøver at bruge dobbelte anførselstegn. Gør dit liv lettere. Se: