INSERT

Z Wikipedie, otevřené encyklopedie

SQL příkaz INSERT přidá do tabulky relační databáze nový záznam.

[editovat] Základní forma

Základní forma příkazu INSERT vypadá takto:

INSERT INTO tabulka (sloupec1, [sloupec2, ... ]) VALUES (hodnota1, [hodnota2, ...])
  • tabulka - název tabulky, do které se má nový záznam uložit
  • sloupec1 … - jmenovitý seznam sloupců, do kterých se hodnoty ukládají
  • hodnota1 … - vkládaná hodnota. Hodnota1 se uloží do sloupce1, hodnota2 do sloupce2 atd.

Počet sloupců a hodnot musí být stejný. Pokud není sloupeček zadán (tzn. že jméno sloupce není uvedeno v seznamu sloupců), použije se implicitní hodnota. Tato implicitní hodnota se definuje společně s definicí tabulky.

Hodnoty zadané při INSERT dotazu musí splňovat všechny podmínky pro sloupce (např. primární klíč, podmínky CHECK a NOT NULL). Pokud nastane syntaktická chyba, záznam se do tabulky nepřidá.

Příklad

Obsah tabulky telefonni_seznam před vložením nového záznamu

jmeno cislo ulice mesto
Jan Novák 257125474 Wikipedistická 28 Pastoriovice
Jana Nováková 574125474 Luční 6 Praha
INSERT INTO telefonni_seznam (jmeno, cislo) VALUES ('John Doe', '555-1212');

Obsah tabulky telefonni_seznam po vložení nového záznamu

jmeno cislo ulice mesto
Jan Novák 257125474 Wikipedistická 28 Pastoriovice
Jana Nováková 574125474 Luční 6 Praha
John Doe 555-1212 NULL NULL

Pokud jsou zadány hodnoty všech sloupečků, můžeme použít zkrácenou verzi:

INSERT INTO tabulka VALUES (hodnota1, [hodnota2, ...])
Příklad
INSERT INTO telefonni_seznam VALUES ('John Doe', '555-1212', 'Pařížská 6','Aš');
jmeno cislo ulice mesto
Jan Novák 257125474 Wikipedistická 28 Pastoriovice
Jana Nováková 574125474 Luční 6 Praha
John Doe 555-1212 Pařížská 6