PostgreSQL INSERT: Vkládání dat do tabulky
PostgreSQL příkaz INSERT
In PostgreSQL, příkaz insert pomáhá vložit nový řádek nebo řádek do tabulky. Můžete vložit řádky určené výrazy hodnot, nula nebo více řádků vyplývajících z dotazu.
Syntaxe PostgreSQL VLOŽTE DO
INSERT INTO TABLE_NAME (column1, column2, ...columnN) VALUES (value1, value2,...valueN);
Ve výše uvedené syntaxi můžete vidět, že sloupce 1 až N jsou názvy sloupců v tabulce, do kterých jste chtěli vložit data. Cílový sloupec musí být uveden v libovolném konkrétním pořadí. Hodnoty dodané klauzulí dotazu nebo hodnot jsou buď odpovídajícími hodnotami pro sloupce.
Jakmile je dotaz proveden, můžete vidět výstupní zprávu.
Insert oid 1
Tato výstupní zpráva se zobrazí, pokud je vložen pouze jeden řádek, oid je číselné OID přiřazené vloženému řádku.
Příklad PostgreSQL Vložit do tabulky
Zvažte následující tabulku „výukové programy“ se dvěma sloupci.
„id“ celé číslo VÝCHOZÍ hodnota 1
text „název_tutoriálu“ VÝCHOZÍ hodnota postgre
A žádná omezení
Zde jsou kroky pro PostgreSQL vložit do tabulky:
Krok 1) Vložení řádku do
INSERT INTO tutorials(id, tutorial_name) VALUES (1, 'postgre');
POZNÁMKA: Pouze znaky nebo hodnoty data musí být při vkládání řádku uzavřeny do jednoduchých uvozovek.
Krok 2) Pokud však vložíte data do všech sloupců, můžete názvy sloupců vynechat. Stejný příkaz vložení lze také napsat jako,
INSERT INTO tutorials VALUES (1, 'postgre');
Krok 3) Hodnoty dat jsou uvedeny v pořadí, v jakém se sloupce zobrazují v tabulce, oddělené čárkami.
Výše uvedená syntaxe má problém, který potřebujete znát pořadí sloupců v tabulce. Chcete-li tento problém vyřešit, můžete také explicitně uvést sloupce.
Například oba níže uvedené příkazy mají stejný účinek, jaký je zobrazen níže:
INSERT INTO tutorials(id, tutorial_name) VALUES (1, 'postgre');
INSERT INTO tutorials(tutorial_name, id) VALUES ('postgre',1);
Krok 4) V tomto příkladu můžete vidět, že pokud nemáte hodnoty pro všechny sloupce, můžete některé z nich vynechat.
V takovém případě budou sloupce automaticky vyplněny svými výchozími hodnotami, pokud jsou zadány.
INSERT INTO tutorials(id) VALUES (5);
Krok 5) Můžete také požádat o výchozí hodnoty pro jednotlivé sloupce nebo celý řádek:
INSERT INTO tutorials(id, tutorial_name) VALUES (1, DEFAULT); INSERT INTO tutorials DEFAULT VALUES;
Krok 6) Jediným příkazem můžete více řádků:
INSERT INTO tutorials(id, tutorial_name) VALUES (1, 'postgre'), (2, 'oracle'), (3, 'mysql'), (4, 'mongo');
Krok 7) In PostgreSQL, jde také o vložení výsledku dotazu, který nemusí obsahovat žádné řádky, jeden řádek nebo více řádků:
INSERT INTO tutorials (id, tutorial_name) SELECT id, tutorial_name FROM tutorials WHERE tutorial_name = 'mysql';
PostgreSQL Vložte příkaz pomocí pgAdmin
Zde jsou kroky k použití příkazu Insert pgAdmin v Postgre SQL
Krok 1) Ve stromu objektů
- Klepněte pravým tlačítkem myši na tabulku, kam chcete vložit data
- Vyberte Skripty
- INSERT Script
Krok 2) Na panelu Vložit
- Upravte dotaz
- Klikněte na tlačítko osvětlení
- Sledujte výstup
Krok 3) Můžete také přejít na Nástroje > Dotazovací nástroje a otevřít Editor dotazů, ale nezískáte výchozí vkládací dotaz.
Shrnutí
| Kód/Parametr/Tip | Description |
|---|---|
| INSERT INTO TABLE_NAME (sloupec1, sloupec2, …sloupecN) HODNOTY (hodnota1, hodnota2,…hodnotaN); |
Slouží k vkládání hodnot do tabulky |
| INSERT INTO tutorials(id, tutorial_name) VALUES (1, 'postgre'); INSERT INTO tutoriály(název_tutoriálu, id) VALUES ('postgre',1); |
Pořadí sloupců není důležité. Obojí bude mít stejný účinek. |
| INSERT INTO tutoriálů VALUES (1, 'postgre'); | Pokud zadáváte hodnoty pro všechny sloupce, není třeba zadávat |
| INSERT INTO tutoriály (id, tutorial_name) SELECT id, název_kurzu FROM kurzů WHERE tutorial_name = 'mysql'; |
V dotazu INSERT můžete zadat jeden nebo více poddotazů odkazovaných jménem. |
| VÝCHOZÍ HODNOTY | Použijte tuto klauzuli k vyplnění všech sloupců jejich výchozími hodnotami. |
| výraz | Hodnota a výraz, který by měl být přiřazen k odpovídajícímu sloupci. |
| omeDEFAULT | Výchozí klauzule se použije, když je odpovídající sloupec vyplněn svou výchozí hodnotou. |









