VLOŽTE do Oracle - Příklady implementace příkazu INSERT v Oracle

Obsah:

Anonim

Úvod do INSERT v Oracle

V tomto článku se dozvíme o INSERT dotazu v ORACLE. Jak název napovídá, INSERT dotaz se používá k přidání / vložení jednoho nebo více záznamů v tabulce. Je to příkaz DML. Střední manipulace s daty DML. Je to jeden z často používaných dotazů Oracle pro řešení problémů. Jeden bod k poznámce je, že když použijeme INSERT, musíme poskytnout hodnotu pro každý NOT NULL sloupec, ale pokud sloupec umožňuje NULL hodnoty, můžeme tento sloupec vynechat.

Syntax

Dotaz INSERT má velmi jednoduchou syntaxi, jak uvidíme níže,

  • Vložení jediného záznamu pomocí klíčového slova VALUES.

Syntax:

INSERT INTO table_name
(column1, column2, ……, column_n)
VALUES
(expression1, expression2, expression3, expression_n);

  • Vkládání více záznamů pomocí klíčového slova SELECT.

Syntax:

INSERT INTO table_name
(column1, column2, ……, column_n)
SELECT expression_1, expression_2, ……., expression_n
FROM source_table
(WHERE conditions);

Parametry příkazu INSERT v Oracle

Níže jsou uvedeny různé parametry příkazu INSERT v systému Oracle:

  • table_name: Název tabulky, do které chceme vložit hodnoty.
  • (column1, column2, ……, column_n): sloupce, do kterých chceme vložit hodnoty
  • (expression1, expression2, expression3, expression_n): Existují hodnoty, které chceme vložit do příslušných sloupců.
  • source_table: Toto je tabulka, ze které extrahujeme data, která se mají vložit do aktuální tabulky.
  • (kde podmínka): Tato podmínka je volitelná. Používá se, když chceme vložit data na základě určité podmínky.

Příklady implementace příkazu INSERT v Oracle

Níže jsou uvedeny různé příklady implementace příkazu insert v Oracle.

Příklad č. 1 - VLOŽTE pomocí klíčového slova HODNOTY

Toto je nejjednodušší způsob použití příkazu INSERT. V tomto případě v zásadě vkládáme hodnoty udáním skutečných hodnot podle sloupců. Můžeme použít oba způsoby tím, že poskytneme sloupce, do kterých chceme vstoupit, nebo bez nich. Pokud poskytneme sloupce, budou hodnoty vloženy podle pořadí sloupců, které jsme poskytli. Podíváme se na oba způsoby pomocí příkladů.

Dotaz:

INSERT INTO employee (employee_id, name, vehicle_name) VALUES('AD010', 'Sharmishtha', 'Hector');

Nyní jsme nechali jeden sloupec, který je vehicle_id. Takže do ní bude automaticky vloženo null.

Níže uvedený obrázek ukazuje data tabulky po vložení dat.

Jak vidíte, poslední sloupec v posledním záznamu je null. Nyní nebudeme zmiňovat sloupce, pouze použijte klíčové slovo VALUES s INSERT.

Dotaz:

INSERT INTO employee VALUES('AD011', 'Shweta', 'Lexus', 'VH011');

Jak vidíte, sloupce jsme neposkytli. Podívejme se na hodnoty tabulky po provedení příkazu insert.

Jak vidíte, poslední záznam byl vložen do tabulky po provedení dotazu INSERT.

Příklad # 2 - VLOŽTE pomocí klíčového slova SELECT s podmínkou

To je velmi užitečné, když chceme v tabulce provést více příloh. V tomto příkazu používáme příkaz SELECT k vložení dat do naší tabulky extrahováním dat z jiné tabulky. Můžeme také vložit podmínky do dotazu, pokud chceme, aby byla data vložena na základě nějaké podmínky.

Níže uvádíme několik příkladů, které ukazují, jak používat INSERT s SELECT.

Dotaz:

INSERT INTO vehicle(vehicle_id, VEHICLE_NAME) SELECT vehicle_id, vehicle_name from employee where Vehicle_name = 'Lexus';

Ve výše uvedeném dotazu skutečně vkládáme do tabulkového vozidla extrahováním dat od jiného zaměstnance tabulky na základě podmínky, že pouze ty záznamy, které mají ve sloupci veh_name tabulkových zaměstnanců hodnotu jako Lexus, jsou způsobilé získat a poté vloženy do stůl vozidla. Když tedy provedeme výše uvedený dotaz, všechny záznamy, které mají jméno vozidla jako zaměstnanec společnosti Lexus v tabulce, budou vloženy do tabulky vozidla. V našem případě jsme měli pouze jeden takový záznam, takže pokud uvidíte snímek obrazovky, uvidíte, že na konzole je uvedeno „1 záznam vložen“.

Příklad č. 3 - Použití INSERT ALL na jedné tabulce

Tento příkaz se používá, když chceme přidat více záznamů do jedné tabulky pomocí jediného příkazu INSERT. Namísto použití INTO použijeme ALL INTO s INSERT, abychom toho dosáhli. Předpokládejme například, že máme stolní vozidlo a chceme do něj vložit dva záznamy. Pokud použijeme INSERT INTO, musíme napsat dva dotazy, ale s INSERT ALL musíme napsat pouze jeden dotaz. Pojďme se na to podívat

Dotaz:

INSERT ALL
INTO vehicle(vehicle_id, vehicle_name) VALUES('VH007', TATA)
INTO vehicle(vehicle_id, vehicle_name) VALUES('VH008', 'Mahindra')
SELECT * FROM dual;

Jak můžete vidět ve výše uvedeném dotazu, vkládáme dva záznamy pomocí jediného příkazu INSERT. Pokud bychom napsali stejný dotaz pomocí příkazu INSERT INTO, bylo by to tak, jak je uvedeno níže,

INSERT INTO vehicle(vehicle_id, vehicle_name) VALUES('VH007', TATA)
INSERT INTO vehicle(vehicle_id, vehicle_name) VALUES('VH008', 'Mahindra')

Výstup:

Jak vidíte na spuštění dotazovací konzole, poskytuje výstup, který „vložil 2 řádky“.

Příklad č. 4 - Použití INSERT ALL na více tabulek

Příkaz INSERT ALL můžeme také použít k vložení dat do více tabulek. Syntaxe bude stejná a my prostě musíme nahradit názvy tabulek a jejich odpovídající sloupce a hodnoty. Předpokládejme například, že pokud chceme vložit data do obou zaměstnanců i do tabulky vozidel, pak by následující dotaz provedl tuto práci.

Dotaz:

INSERT ALL
INTO vehicle(vehicle_id, vehicle_name) VALUES('VH009', 'Suzuki')
INTO employee(employee_id, name, vehicle_name, vehicle_id) VALUES('AD012', 'Suresh', 'Suzuki', 'VH009')
SELECT * FROM dual;

Jak vidíte ve výše uvedeném dotazu, právě jsme změnili název tabulky a odpovídajícím způsobem jejich sloupce a hodnoty. Pokud bychom napsali stejný dotaz pomocí příkazu INSERT INTO, bylo by to tak, jak je uvedeno níže,

INSERT INTO vehicle(vehicle_id, vehicle_name) VALUES('VH009', 'Suzuki');
INSERT INTO employee(employee_id, name, vehicle_name, vehicle_id) VALUES('AD012', 'Suresh', 'Suzuki', 'VH009');

Výstup:

Jak vidíte na spuštění dotazovací konzole, poskytuje výstup, který „vložil 2 řádky“.

Doporučené články

Toto je průvodce INSERT v Oracle. V tomto článku diskutujeme o tom, co je příkaz INSERT, syntaxe a různé způsoby, jak můžeme použít příkaz INSERT spolu s jejich vhodnými příklady. Další informace naleznete také v následujících článcích

  1. Příklady dotazu SQL Insert
  2. Jak GROUP BY klauzule funguje v SQL?
  3. Top 5 dotazů v Oracle
  4. Kompletní průvodce skladováním dat Oracle