headerphoto

Sloupcová omezení při tvorbě tabulky

Defaultní hodnota

Je výchozí hodnota sloupce. Pokud defaultní hodnotu neurčíme, ani neurčíme hodnotu sloupce v příkazu INSERT, je automaticky dosazena hodnota NULL.

Příklad: Dejme tomu, že vyrábíte nějaké výrobky. Datum objednávky dáme defaultně s dnešním dnem.

prodejna=> CREATE TABLE vyrobek ( id_v serial , nazev varchar(15),vyrobeno date default now());

Defaultní hodnotou může být také výraz.

prodejna=> CREATE TABLE vyrobek ( id_v serial , nazev varchar(15),vyrobeno date default current_date, spotrebovat_do date default current_date+5); 

Podmínka CHECK

Omezí sloupec pro určitou množinu hodnot

Příklad: cena výrobků musí být >0

prodejna=> CREATE TABLE vyrobek ( id_v serial , nazev varchar(15),vyrobeno date default now(),cena int check(cena>0));

Příklad: počet kusů musí být >0 a zároveň <100

prodejna=> CREATE TABLE vyrobek ( id_v serial , nazev varchar(15),vyrobeno date default now(),cena int check(cena>0),pocet_ks int check(počet_ks between 0 and 100));

ekvivalent pro podmínku je check (pocet_ks >= 1 AND a <= 100)

Podmínka NOT NULL

Zamezení vložení prázdných hodnot do sloupce

Příklad: musí být zadán název výrobku

prodejna=> CREATE TABLE vyrobek ( id_v serial , nazev varchar(15) not null,vyrobeno date default now(),cena int check(cena>0));

Podmínka UNIQUE

Zamezuje vložení duplicitních hodnot

Příklad: musí být zadán název výrobku a ten se nesmí opakovat

prodejna=> CREATE TABLE vyrobek ( id_v serial , nazev varchar(15) unique not null,vyrobeno date default now(),cena int check(cena>0)); 

PRIMARY KEY

Označí sloupec, který jedinečně identifikuje řádek. Zamezuje výskytu duplicitních hodnot a prázdných hodnot ve sloupci. Je hlavním indexem tabulky.

Příklad: Hlavní index tabulky vzrobek bude id_v

prodejna=> CREATE TABLE vyrobek ( id_v serial primary key, nazev varchar(15),vyrobeno date default now(),cena int check(cena>0));

REFERENCES (cizí klíč)

Sloupcové omezení, které říká, že hodnoty ve sloupci budou primárními klíči z jiné tabulky. Za klíčovým slovem REFERENCES následuje název tabulky, do které se budeme odkazovat (např. do odberatele) a v závorce za názvem tabulky bude název sloupce s primárními klíči této tabulky:

REFERENCES odberatele (prim_klic)


prodejna=> CREATE TABLE vyrobek ( id_v serial primary key, nazev varchar(15),vyrobeno date default now(),cena int check(cena>0));

prodejna=> CREATE TABLE odberatele (id_odberatele serial primary key, jmeno varchar (20), prijmeni varchar (20),sidlo varchar(30), co int references vyrobek(id_v));
Design downloaded from Free Templates - your source for free web templates