CONSTRAINT

Technology
12 hours ago
8
4
2
Avatar
Author
Albert Flores

CONSTRAINT je klíčové slovo jazyka SQL, které v databázové tabulce umožňuje vytvořit omezení s podmínkami, jež musí být splněny pro hodnoty jejích sloupců při vkládání nebo změnu záznamů. Tato omezení lze pojmenovat a nadále s nimi manipulovat jako s ostatními nedatovými objekty tabulky (kterými jsou například indexy, cizí klíče či spouště). Nemá-li návrhář databáze v plánu s těmito omezeními manipulovat, nemusí za CONSTRAINT specifikovat název omezení, ba co víc - pro většinu omezení tabulky lze v SQL vynechat i klíčové slovo CONSTRAINT.

Příklady

Vytvoření omezení c1 a c2 pro sloupce mesic a den, resp. jejich povolené hodnoty.

CREATE TABLE soutezni_otazka( mesic TINYINT, den TINYINT, otazka TEXT, CONSTRAINT c1 CHECK (mesic BETWEEN 1 AND 12), CONSTRAINT c2 CHECK (den BETWEEN 1 AND 31) );

Vytvoření pojmenovaného omezení c2 pojícího se s klíčem tabulky.

CREATE TABLE produkty( id INT NOT NULL, nazev VARCHAR(50), cena DECIMAL(5,2), CONSTRAINT c2 PRIMARY KEY id );

CONSTRAINT lze využít i pro vytvoření jiného než primárního klíče a též klíče nad vícero sloupci. Následující příkaz vytvoří spolu s tabulkou omezení pro její záznamy, které zabrání vložení dne a měsíce, které (myšleno oba zároveň) již v tabulce existují:

CREATE TABLE soutezni_otazka( mesic BYTE, den BYTE, cena DECIMAL(5,2), CONSTRAINT c2 UNIQUE KEY mesic_den(mesic, den) );

Odkazy

Reference

Související články

CHECK

Externí odkazy

http://www.sql.org/sql-database/postgresql/manual/ddl-constraints.html

Kategorie:SQL

5 min read
Share this post:
Like it 8

Leave a Comment

Please, enter your name.
Please, provide a valid email address.
Please, enter your comment.
Enjoy this post? Join Cesko.wiki
Don’t forget to share it
Top