Uvod u INSERT u Oracleu
U ovom ćemo članku saznati više o INSERT upitu u ORACLE-u. Kao što ime sugerira, INSERT upit koristi se za dodavanje / umetanje pojedinih ili više zapisa u tablicu. To je izjava DML. DML srednja manipulacija podacima. To je jedan od najčešće korištenih Oracle upita za rješavanje problema. Treba napomenuti da pri korištenju INSERT-a moramo osigurati vrijednost za svaki stupac NOT NULL, ali ako stupac dopušta NULL vrijednosti, stupac možemo izostaviti.
Sintaksa
INSERT upit ima prilično jednostavnu sintaksu kao što ćemo vidjeti u nastavku,
- Umetanje jednog zapisa pomoću ključne riječi VALUES.
Sintaksa:
INSERT INTO table_name
(column1, column2, ……, column_n)
VALUES
(expression1, expression2, expression3, expression_n);
- Umetanje više zapisa pomoću ključne riječi SELECT.
Sintaksa:
INSERT INTO table_name
(column1, column2, ……, column_n)
SELECT expression_1, expression_2, ……., expression_n
FROM source_table
(WHERE conditions);
Parametri INSERT izjave u Oracleu
Ispod su različiti parametri INSERT Izjave u Oracleu:
- table_name: Naziv tablice u koju želimo umetnuti vrijednosti.
- (stupac1, stupac2, ……, stupac_n): stupci u koje želimo umetnuti vrijednosti
- (izraz1, izraz2, izraz3, izraz_n): Postoje vrijednosti koje želimo umetnuti u odgovarajuće stupce.
- source_table: Ovo je tablica iz koje ćemo izvući podatke za umetanje u trenutnu tablicu.
- (gdje je uvjet): Ovaj je uvjet neobvezan. Koristi se kada želimo umetnuti podatke na temelju nekog uvjeta.
Primjeri za implementaciju INSERT izjave u Oracle
Slijede sljedeći primjeri implementacije izjave o umetanju u oracle:
Primjer 1 - ULAZITE se pomoću ključne riječi VALUES
To je najlakši način korištenja naredbe INSERT. U ovom slučaju, mi u osnovi umetamo vrijednosti davanjem stvarnih vrijednosti prema stupcima. Možemo ga koristiti na oba načina pružanjem stupaca u koje želimo ući ili bez pružanja stupaca. Ako pružimo stupce, vrijednosti će biti umetnute prema redoslijedu stupaca koji smo naveli. Pogledat ćemo u oba načina pomoću primjera.
upita:
INSERT INTO employee (employee_id, name, vehicle_name) VALUES('AD010', 'Sharmishtha', 'Hector');
Sada smo ovdje ostavili jedan stupac koji je Veh_id. Tako da će se automatski null umetnuti u nju.
Donja slika prikazuje nam tablične podatke nakon umetanja podataka.
Kao što vidite zadnji stupac u posljednjem zapisu je nula. Sada nećemo spominjati stupce, samo pomoću ključne riječi upotrijebite ključnu riječ VALUES.
upita:
INSERT INTO employee VALUES('AD011', 'Shweta', 'Lexus', 'VH011');
Kao što vidite, stupce nismo pružili. Pogledajmo vrijednosti tablice nakon izvršenja naredbe za umetanje.
Kao što vidite, posljednji zapis je umetnut u tablicu nakon izvršenja INSERT upita.
Primjer br. 2 - USTAVITE pomoću ključne riječi SELECT s uvjetom
To je vrlo korisno kada želimo izvršiti više umetaka u tablici. Pri tome koristimo naredbu SELECT za umetanje podataka u našu tablicu ekstrahiranjem podataka iz druge tablice. U upit možemo staviti i uvjete ako želimo da se podaci umetnu na temelju nekog uvjeta.
Vidjet ćemo nekoliko primjera u nastavku koji nam pokazuju kako koristiti INSERT s SELECT-om.
upita:
INSERT INTO vehicle(vehicle_id, VEHICLE_NAME) SELECT vehicle_id, vehicle_name from employee where Vehicle_name = 'Lexus';
U gornjem upitu zapravo umetamo u vozilo tablice vađenjem podataka drugog zaposlenika tablice na temelju uvjeta da samo oni zapisi koji imaju vrijednost kao Lexus u stupcu_ime vozila zaposlenika tablice ispunjavaju uvjete za ekstrahiranje i zatim umetnuti u tablica vozila. Kada izvršimo gornji upit, svi zapisi koji u vozilu tablice imaju Le_us kao zaposlenik tablice ubacuju se u vozilo tablice. U našem slučaju imali smo samo jedan takav zapis, pa ako vidite snimku zaslona, vidjet ćete da na konzoli piše "1 zapis je umetnut".
Primjer br. 3 - Korištenje INSERT SVE na jednoj tablici
Ova se izjava koristi kada želimo dodati više zapisa u jednu tablicu pomoću jedne INSERT izjave. Umjesto da koristimo INTO, koristit ćemo SVE INTO s INSERT-om da bismo to postigli. Kao primjer pretpostavimo da imamo stolno vozilo i želimo u njega umetnuti dva zapisa. Ako koristimo INSERT INTO, moramo napisati dva umetanja upita, ali uz INSERT ALL moramo napisati samo jedan upit. Pogledajmo upit za to
upita:
INSERT ALL
INTO vehicle(vehicle_id, vehicle_name) VALUES('VH007', TATA)
INTO vehicle(vehicle_id, vehicle_name) VALUES('VH008', 'Mahindra')
SELECT * FROM dual;
Kao što možete vidjeti u gornjem upitu, mi ubacujemo dva zapisa koristeći jednu INSERT izjavu. Ako bismo napisali isti upit koristeći INSERT INTO izjavu, to bi bilo kao što je napisano u nastavku,
INSERT INTO vehicle(vehicle_id, vehicle_name) VALUES('VH007', TATA)
INSERT INTO vehicle(vehicle_id, vehicle_name) VALUES('VH008', 'Mahindra')
Izlaz:
Kao što možete vidjeti prilikom izvršenja konzole upita daje izlaz koji su "umetnuta 2 reda".
Primjer br. 4 - Korištenje INSERT SVE na više tablica
Također možemo koristiti stavku INSERT ALL za umetanje podataka u više tablica. Sintaksa će biti ista i samo moramo zamijeniti nazive tablica i njihove odgovarajuće stupce i vrijednosti. Pretpostavimo, na primjer, ako želimo umetnuti podatke o oba zaposlenika, kao i u tablicu vozila, sljedeći bi upit ispunio posao.
upita:
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;
Kao što možete vidjeti u gornjem upitu, upravo smo promijenili naziv tablice i, prema tome, njihove stupce i vrijednosti. Ako bismo napisali isti upit koristeći INSERT INTO izjavu, to bi bilo kao što je napisano u nastavku,
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');
Izlaz:
Kao što možete vidjeti prilikom izvršenja konzole upita daje izlaz koji su "umetnuta 2 reda".
Preporučeni članci
Ovo je vodič za INSERT u Oracleu. U ovom ćemo članku razgovarati o tome što je INSERT izraz, sintaksa i različiti načini na koje možemo upotrebljavati INSERT izraz zajedno s njihovim odgovarajućim primjerima. Možete pogledati i sljedeće članke da biste saznali više -
- Primjeri SQL upita za umetanje
- Kako klauzula GROUP BY djeluje u SQL-u?
- Top 5 upita u Oracleu
- Kompletan vodič za skladištenje podataka Oracle