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í

PostgreSQL Vložit do tabulky

Zde jsou kroky pro PostgreSQL vložit do tabulky:

Krok 1) Vložení řádku do

INSERT INTO tutorials(id, tutorial_name) VALUES (1, 'postgre');

PostgreSQL Vložit do tabulky

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');

PostgreSQL Vložit do tabulky

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);

PostgreSQL Vložit do tabulky

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);

PostgreSQL Vložit do tabulky

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;

PostgreSQL Vložit do tabulky

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');

PostgreSQL Vložit do tabulky

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žit do tabulky

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ů

  1. Klepněte pravým tlačítkem myši na tabulku, kam chcete vložit data
  2. Vyberte Skripty
  3. INSERT Script

PostgreSQL Vložte příkaz pomocí pgAdmin

Krok 2) Na panelu Vložit

  1. Upravte dotaz
  2. Klikněte na tlačítko osvětlení
  3. Sledujte výstup

PostgreSQL Vložte příkaz pomocí pgAdmin

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.

PostgreSQL Vložte příkaz pomocí pgAdmin

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.

Shrňte tento příspěvek takto: