Introduksjon til INSERT i Oracle
I denne artikkelen skal vi lære om INSERT-spørringen i ORACLE. Som navnet antyder INSERT-spørring brukes til å legge til / sette inn enkelt eller flere poster i en tabell. Det er en DML-uttalelse. DML betyr datamanipulering. Det er en av de ofte brukte Oracle-spørsmålene for å løse problemer. Et poeng å merke seg er at når vi bruker INSERT må vi oppgi en verdi for hver IKKE NULL-kolonne, men hvis kolonnen tillater NULL-verdier, kan vi utelate kolonnen.
syntax
INSERT-spørringen har en ganske enkel syntaks som vi vil se nedenfor,
- Setter inn en enkelt post ved å bruke VALUES-nøkkelordet.
syntaks:
INSERT INTO table_name
(column1, column2, ……, column_n)
VALUES
(expression1, expression2, expression3, expression_n);
- Sette inn flere poster ved å velge SELECT-nøkkelordet.
syntaks:
INSERT INTO table_name
(column1, column2, ……, column_n)
SELECT expression_1, expression_2, ……., expression_n
FROM source_table
(WHERE conditions);
Parametere av INSERT-uttalelse i Oracle
Nedenfor er de forskjellige parametrene for INSERT Statement i Oracle:
- tabellnavn: Navnet på tabellen der vi vil sette inn verdiene.
- (kolonne1, kolonne2, ……, kolonne_n): kolonner der vi vil sette inn verdier
- (expression1, expression2, expression3, expression_n): Det er verdiene som vi vil sette inn i de respektive kolonnene.
- source_table: Dette er tabellen der vi vil trekke ut data for å sette inn i den gjeldende tabellen.
- (hvor tilstand): Denne betingelsen er valgfri. Det brukes når vi vil sette inn data basert på en eller annen tilstand.
Eksempler på implementering av INSERT-uttalelse i Oracle
Følgende er de forskjellige eksemplene for å implementere innsatsen uttalelse i oracle:
Eksempel nr. 1 - INSERT ved å bruke VALUES-nøkkelord
Dette er den enkleste måten å bruke INSERT-kommandoen. I dette tilfellet setter vi i utgangspunktet verdier ved å gi reelle verdier i henhold til kolonnene. Vi kan bruke det begge veier ved å oppgi kolonnene vi ønsker å gå inn i eller uten å oppgi kolonnene. Hvis vi oppgir kolonnene, blir verdiene satt inn i henhold til rekkefølgen på kolonnene vi oppga. Vi vil se på begge måter ved hjelp av eksempler.
Spørsmål:
INSERT INTO employee (employee_id, name, vehicle_name) VALUES('AD010', 'Sharmishtha', 'Hector');
Nå har vi lagt igjen en kolonne her som er vehicle_id. Så automatisk blir null satt inn i den.
Bildet nedenfor viser oss tabelldataene etter at data er satt inn.
Som du kan se, er den siste kolonnen i den siste posten null. Nå vil vi ikke nevne kolonnene bare bruke VALUES-nøkkelordet med INSERT.
Spørsmål:
INSERT INTO employee VALUES('AD011', 'Shweta', 'Lexus', 'VH011');
Som du ser har vi ikke gitt kolonnene. La oss se på tabellverdiene etter å ha utført insert-kommandoen.
Som du kan se, er den siste posten satt inn i tabellen etter utførelsen av INSERT-spørringen.
Eksempel # 2 - INSERT ved å bruke et VELG nøkkelord med betingelsen
Dette er veldig nyttig når vi ønsker å gjøre flere innlegg i en tabell. I dette bruker vi en SELECT-setning for å sette inn data i tabellen vår ved å trekke ut data fra en annen tabell. Vi kan også sette forhold i spørringen hvis vi vil at dataene skal settes inn basert på en eller annen tilstand.
Vi vil se noen eksempler nedenfor som viser oss hvordan du bruker INSERT med SELECT.
Spørsmål:
INSERT INTO vehicle(vehicle_id, VEHICLE_NAME) SELECT vehicle_id, vehicle_name from employee where Vehicle_name = 'Lexus';
I spørsmålet ovenfor setter vi faktisk inn i tabellkjøretøyet ved å trekke ut data fra en annen tabellansatt basert på betingelsen at bare de postene som har verdi som Lexus i kolonnen kjøretøynavn til tabellansatte er kvalifiserte for å bli hentet ut og deretter satt inn i kjøretøy bord. Så når vi utfører spørringen ovenfor, vil alle poster som har kjøretøynavn som Lexus i tabellansatt settes inn i bordkjøretøyet. I vårt tilfelle hadde vi bare en slik post, så hvis du ser skjermdumpen, vil du se at konsollen sier "1 post satt inn".
Eksempel 3 - Bruke INSERT ALL på et enkelt bord
Denne uttalelsen brukes når vi vil legge til flere poster i en enkelt tabell ved å bruke en enkelt INSERT-setning. I stedet for å bruke INTO, skal vi bruke ALLE INTO med INSERT for å oppnå dette. Anta som et eksempel at vi har et bordkjøretøy, og vi vil sette inn to poster i det. Hvis vi bruker INSERT INTO, må vi skrive to innstikksspørsmål, men med INSERT ALL må vi bare skrive ett spørsmål. La oss se på spørsmålet for det
Spørsmål:
INSERT ALL
INTO vehicle(vehicle_id, vehicle_name) VALUES('VH007', TATA)
INTO vehicle(vehicle_id, vehicle_name) VALUES('VH008', 'Mahindra')
SELECT * FROM dual;
Som du kan se i spørringen ovenfor, setter vi inn to poster ved å bruke en enkelt INSERT-setning. Hvis vi ville ha skrevet den samme spørringen ved å bruke INSERT INTO-setningen, ville det vært som skrevet nedenfor,
INSERT INTO vehicle(vehicle_id, vehicle_name) VALUES('VH007', TATA)
INSERT INTO vehicle(vehicle_id, vehicle_name) VALUES('VH008', 'Mahindra')
Produksjon:
Som du ser når du kjører spørringskonsollen, gir du en utdata som "2 rader er satt inn".
Eksempel 4 - Bruke INSERT ALL på flere tabeller
Vi kan også bruke INSERT ALL-setningen for å sette inn data i flere tabeller. Syntaksen vil være den samme, og vi må bare erstatte tabellenavn og tilhørende kolonner og verdier. Anta at for eksempel hvis vi vil sette inn data i både ansatte og kjøretøykabellen, vil følgende spørring gjøre jobben.
Spørsmål:
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;
Som du kan se i spørringen ovenfor, har vi nettopp endret tabellnavnet og tilsvarende kolonnene og verdiene. Hvis vi ville ha skrevet den samme spørringen ved å bruke INSERT INTO-setningen, ville det vært som skrevet nedenfor,
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');
Produksjon:
Som du ser når du kjører spørringskonsollen, gir du en utdata som "2 rader er satt inn".
Anbefalte artikler
Dette er en guide til INSERT i Oracle. I denne artikkelen diskuterer vi hva som er INSERT-setning, syntakser og forskjellige måter vi kan bruke INSERT-setningen sammen med passende eksempler. Du kan også se på følgende artikler for å lære mer-
- Eksempler på SQL Insert Query
- Hvordan GROUP BY-ledd fungerer i SQL?
- Topp 5 spørringer i Oracle
- Komplett guide til Oracle Data Warehousing