S tabulkou vytvořenou tímto příkazem:
CREATE TABLE people (
age INT NOT NULL,
name CHAR(20) NOT NULL
);
Položku můžeme vložit více než jednou.
A konkrétně můžeme mít sloupce, které opakují stejnou hodnotu.
Můžeme vynutit, aby sloupec měl pouze jedinečné hodnoty pomocí UNIQUE
klíčové omezení:
CREATE TABLE people (
age INT NOT NULL,
name CHAR(20) NOT NULL UNIQUE
);
Pokud se nyní pokusíte přidat „Flavio“ dvakrát:
INSERT INTO people VALUES (37, 'Flavio');
INSERT INTO people VALUES (20, 'Flavio');
Dostanete chybu:
ERROR: duplicate key value violates unique constraint "people_name_key"
DETAIL: Key (name)=(Flavio) already exists.
Primární klíč je jedinečný klíč, který má další vlastnost:je to primární způsob, jak identifikujeme řádek v tabulce.
CREATE TABLE people (
age INT NOT NULL,
name CHAR(20) NOT NULL PRIMARY KEY
);
Primárním klíčem může být například e-mail v seznamu uživatelů.
Primárním klíčem může být jedinečné id
které každému záznamu přiřadíme automaticky.
Ať je tato hodnota jakákoliv, víme, že ji můžeme použít k odkazování na řádek v tabulce.