logo

Oracle Insert Statement

U Oracleu se izjava INSERT koristi za dodavanje jednog ili više zapisa u tablicu.

Sintaksa: (umetanje jednog zapisa pomoću ključne riječi Values):

 INSERT INTO table (column1, column2, ... column_n ) VALUES (expression1, expression2, ... expression_n ); 

Sintaksa: (umetanje više zapisa pomoću naredbe SELECT):

 INSERT INTO table (column1, column2, ... column_n ) SELECT expression1, expression2, ... expression_n FROM source_table WHERE conditions; 

Parametri:

1) tablica: Tablica u koju se ubacuju zapisi.

2) stupac1, stupac2, ... stupac_n:

Stupci u tablici za umetanje vrijednosti.

3) izraz1, izraz2, ... izraz_n:

Vrijednosti koje treba dodijeliti stupcima u tablici. Tako bi stupcu1 bila dodijeljena vrijednost izraza1, stupcu2 bi bila dodijeljena vrijednost izraza2, itd.

4) izvorna_tablica:

Izvorna tablica pri umetanju podataka iz druge tablice.

5) uvjeti:

Uvjeti koji moraju biti ispunjeni da bi se zapisi mogli umetnuti.

Primjer Oracle umetanja: prema VALUE ključne riječi

To je najjednostavniji način za umetanje elemenata u bazu pomoću ključne riječi VALUE.

Pogledajte ovaj primjer:

Razmotrite ovdje već stvorenu tablicu dobavljača. Dodajte novi red gdje je vrijednost dobavljača_id 23, a dobavljač_naziv je Flipkart.

Pogledajte ovaj primjer:
 INSERT INTO suppliers (supplier_id, supplier_name) VALUES (50, 'Flipkart'); 
Izlaz:
 1 row(s) inserted. 0.02 seconds 

Primjer Oracle umetanja: pomoću naredbe SELECT

Ova metoda se koristi za kompliciranije slučajeve umetanja. U ovoj metodi umetanje se vrši naredbom SELECT. Ova metoda se koristi za umetanje više elemenata.

Pogledajte ovaj primjer:

U ovoj metodi u tablicu 'dobavljači' umećemo vrijednosti iz tablice 'kupci'. Obje su tablice već stvorene sa svojim odgovarajućim stupcima.

Izvršite ovaj upit:
 INSERT INTO suppliers (supplier_id, supplier_name) SELECT age, address FROM customers WHERE age > 20; 
Izlaz:
 4 row(s) inserted. <p>0.00 seconds </p>

Možete čak provjeriti broj redaka koje želite umetnuti sljedećom naredbom:

 SELECT count(*) FROM customers WHERE age &gt; 20; 
Izlaz:
 Count(*) 4