Difference between revisions of "Tvorba tabulky"
m |
m |
||
Line 1: | Line 1: | ||
− | K založení nové tabulky v databázi slouží příkaz | + | K založení nové tabulky v databázi slouží příkaz CREATE TABLE. |
− | Obsahuje několik povinných údajů. Tabulku musíme pojmenovat, pojmenovat její sloupce a určit datové typy pro tyto sloupce. Seznam konkrétních možných datových typů naleznete v referenční příručce jazyka SQL pro konkrétní SŘBD. Pro Oracle jsou DT uvedeny | + | Obsahuje několik povinných údajů. Tabulku musíme pojmenovat, pojmenovat její sloupce a určit datové typy pro tyto sloupce. Seznam konkrétních možných datových typů naleznete v referenční příručce jazyka SQL pro konkrétní SŘBD. Pro Oracle jsou DT uvedeny [http://docs.oracle.com/cd/B10501_01/server.920/a96540/sql_elements2a.htm v dokumentaci Oracle]. Dále je možné ke každému sloupci uvést různá omezení - ''default hodnotu'', možnost hodnoty ''NULL'' či referenci na jinou tabulku (cizí klíč). |
+ | Syntaxe příkazu: | ||
+ | |||
+ | CREATE TABLE [nazev_databaze.]nazev_tabulky | ||
+ | (<nazev sloupce> <datovy typ> | ||
+ | [DEFAULT <konstantni vyraz>] | ||
+ | [NULL | NOT NULL] | ||
+ | [<omezeni pro sloupec>] | ||
+ | |[<omezeni pro tabulku>] | ||
+ | [,...n] | ||
+ | ) | ||
− | |||
− | |||
− | Základní syntaxe může být rozšířena o různá integritní omezení kladená na jednotlivé sloupce | + | Základní syntaxe může být rozšířena o různá integritní omezení kladená na jednotlivé sloupce nebo jejich kombinaci. Omezení však mohou být definována i příkazem ALTER TABLE, jakož i přidávání nebo změna sloupců, takže v našem příkladu zvolíme určité rozdělení těchto definic. |
Rozšířená syntaxe příkazu CREATE TABLE: | Rozšířená syntaxe příkazu CREATE TABLE: | ||
Line 31: | Line 39: | ||
'''CREATE TABLE''' [nazev_databaze.]nazev_tabulky | '''CREATE TABLE''' [nazev_databaze.]nazev_tabulky | ||
− | + | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
V [] jsou uvedeny nepovinné údaje - například [nazev_databaze.]. Za () je uvedena povinná část <nazev sloupce> <datovy typ> s možným opakováním až n-krát [,...n]. | V [] jsou uvedeny nepovinné údaje - například [nazev_databaze.]. Za () je uvedena povinná část <nazev sloupce> <datovy typ> s možným opakováním až n-krát [,...n]. |
Revision as of 08:57, 30 August 2014
K založení nové tabulky v databázi slouží příkaz CREATE TABLE. Obsahuje několik povinných údajů. Tabulku musíme pojmenovat, pojmenovat její sloupce a určit datové typy pro tyto sloupce. Seznam konkrétních možných datových typů naleznete v referenční příručce jazyka SQL pro konkrétní SŘBD. Pro Oracle jsou DT uvedeny v dokumentaci Oracle. Dále je možné ke každému sloupci uvést různá omezení - default hodnotu, možnost hodnoty NULL či referenci na jinou tabulku (cizí klíč). Syntaxe příkazu:
CREATE TABLE [nazev_databaze.]nazev_tabulky (<nazev sloupce> <datovy typ> [DEFAULT <konstantni vyraz>] [NULL | NOT NULL] [<omezeni pro sloupec>] |[<omezeni pro tabulku>] [,...n] )
Základní syntaxe může být rozšířena o různá integritní omezení kladená na jednotlivé sloupce nebo jejich kombinaci. Omezení však mohou být definována i příkazem ALTER TABLE, jakož i přidávání nebo změna sloupců, takže v našem příkladu zvolíme určité rozdělení těchto definic.
Rozšířená syntaxe příkazu CREATE TABLE:
create table <jméno_tabulky> (<jméno_sloupce> <datový_typ> [<omezení_tohoto_sloupce>] [,<jméno_sloupce> <datový_typ> [<omezení_tohoto_sloupce>] ...] [,<další_omezení> [,<další_omezení>...]] );
Možná omezení nepřesahující rámec tabulky:
PRIMARY KEY ... definice primárního klíče tabukly UNIQUE ... definice unikátního klíče NOT NULL ... sloupec nesmí být prázdný DEFAULT <výraz> ... definice defaultní hodnoty pro sloupec
CHECK (<podmínky>) ... určení podmínek, které musí splňovat přípustné hodnoty či kombinace hodnot ve sloupcích jednoho řádku tabulky
Omezení referenční integrity uvedeme v kapitole ALTER TABLE. Každé omezení může být pojmenováno klauzulí CONSTRAINT, syntaxe:
constraint <jméno_omezení> <definice omezení>V příkazu pojmenujeme tabulku (dle významu obashu dat, předchozí analýzy), její sloupce (atributy), ke kterým nadefinujeme datové typy.
Syntaxe příkazu CREATE TABLE:
CREATE TABLE [nazev_databaze.]nazev_tabulky
V [] jsou uvedeny nepovinné údaje - například [nazev_databaze.]. Za () je uvedena povinná část <nazev sloupce> <datovy typ> s možným opakováním až n-krát [,...n].