Přidá do tabulky záznam nebo několik záznamů. Označuje se jako přidávací dotaz.
Syntaxe
Přidávací dotaz několika záznamů:
INSERT INTO cíl [(pole1[, poled2[, ...]])] [IN externí_databáze]
SELECT [zdroj.]pole1[, pole2[, ...]
FROM výraz_tabulky
Přidávací dotaz jednoho záznamu:
INSERT INTO cíl [(pole1[, pole2[, ...]])]
VALUES (hodnota1[, hodnota2[, ...])
Příkaz INSERT INTO se skládá z těchto částí:
Část |
Popis |
cíl |
Název tabulky nebo dotazu, kam se mají záznamy přidat |
pole1, pole2 |
Názvy polí, do kterých se mají data přidat, pokud následují za argumentem cíl, nebo názvy polí, ze kterých se mají data získat, pokud následují za argumentem zdroj |
externí_databáze |
Cesta k externí databázi. Popis této cesty najdete u klauzule IN. |
zdroj |
Název tabulky nebo dotazu, odkud se záznamy mají kopírovat |
výraz_tabulky |
Název tabulky nebo tabulek, ze kterých se záznamy vkládají. Tento argument může být název jedné tabulky, případně složenina vyplývající z operací INNER JOIN, LEFT JOIN a RIGHT JOIN, nebo uložený dotaz. |
hodnota1, hodnota2 |
Hodnoty, které se mají vložit do určitých polí nového záznamu. Jednotlivé hodnoty se vloží do pole, které odpovídá pozici hodnoty v seznamu: hodnota1 se vloží do pole1 nového záznamu, hodnota2 do pole2, a tak dále. Hodnoty musí být oddělené čárkou a uzavřené do jednoduchých uvozovek(' '). |
Poznámky
Příkaz INSERT INTO můžete použít k přidání jednoho záznamu do tabulky pomocí výše zobrazené syntaxe přidávacího dotazu jednoho záznamu. V takovém případě určuje kód název a hodnotu jednotlivých polí záznamu. Musíte zadat každé pole záznamu, kterému má být přiřazena hodnota, a hodnotu tohoto pole. Pokud nezadáte všechna pole, vloží se do chybějících sloupců výchozí hodnota nebo hodnota null. Záznamy se přidávají na konec tabulky.
Příkaz INSERT INTO můžete použít také k přidání sady záznamů z jiné tabulky nebo dotazu pomocí klauzule SELECT ... FROM, jak znázorňuje výše uvedená syntaxe přidávacího dotazu několika záznamů. V takovém případě určuje klauzule SELECT pole, která se mají přidat k zadané cílové tabulce.
Zdrojová nebo cílová tabulka můžou určovat tabulku nebo dotaz. Pokud je zadaný dotaz, přidá databázový stroj Microsoft Access záznamy do každé tabulky určené tímto dotazem.
Příkaz INSERT INTO je nepovinný, ale pokud existuje, předchází příkazu SELECT.
Pokud cílová tabulka obsahuje Primární klíč, nezapomeňte k poli primárního klíče připojit jedinečné hodnoty, které nemají hodnotu Null . Pokud to neuděláte, databázový stroj Microsoft Access záznamy nepřidá.
Pokud k tabulce přidáte záznamy s polem typu Automatické číslo a chcete přidané záznamy přečíslovat, nezahrnujte do dotazu pole typu Automatického číslo. Nezahrnujte do dotazu pole typu Automatické číslo, pokud chcete zachovat původní čísla z tohoto pole.
K přidání záznamů do tabulky v jiné databázi použijte klauzuli IN.
K vytvoření nové tabulky použijte příkaz SELECT... INTO místo vytvářecího dotazu.
Pokud chcete před spuštěním přidávacího dotazu zjistit, které záznamy se přidají, napřed spusťte a zobrazte výsledky výběrového dotazu, který používá stejná výběrová kritéria.
Přidávací dotaz zkopíruje záznamy z jedné nebo několika tabulek do jiné. Tabulky, které obsahují přidávané záznamy, nejsou přidávacím dotazem ovlivněny.
Místo přidání existujících záznamů z jiné tabulky můžete pomocí klauzule VALUES určit hodnotu jednotlivých polí v jednom novém záznamu. Pokud seznam polí vynecháte, musí klauzule VALUES obsahovat hodnotu všech polí v tabulce, jinak se operace INSERT nepodaří. Pro každý další záznam, který chcete vytvořit, použijte další příkaz INSERT INTO s klauzulí VALUES.