Database H2 - Unisci
Il comando MERGE viene utilizzato per aggiornare le righe esistenti e inserire nuove righe in una tabella. La colonna della chiave primaria gioca un ruolo importante durante l'utilizzo di questo comando; è usato per trovare la riga.
Sintassi
Di seguito è riportata la sintassi generica del comando MERGE.
MERGE INTO tableName [ ( columnName [,...] ) ]
[ KEY ( columnName [,...] ) ]
{ VALUES { ( { DEFAULT | expression } [,...] ) } [,...] | select }
Nella sintassi precedente, la clausola KEY viene utilizzata per specificare il nome della colonna della chiave primaria. Insieme alla clausola VALUES, possiamo utilizzare valori primitivi da inserire oppure possiamo recuperare e memorizzare altri valori di tabella in questa tabella utilizzando il comando select.
Esempio
In questo esempio, proviamo ad aggiungere un nuovo record nella tabella Clienti. Di seguito sono riportati i dettagli del nuovo record nella tabella.
Nome colonna | Valore |
---|---|
ID | 8 |
NOME | Lokesh |
ETÀ | 32 |
INDIRIZZO | Hyderabad |
STIPENDIO | 2500 |
Utilizzando la seguente query, inseriamo il record specificato nella query del database H2.
MERGE INTO CUSTOMER KEY (ID) VALUES (8, 'Lokesh', 32, 'Hyderabad', 2500);
La query precedente produce il seguente output.
Update count: 1
Cerchiamo di verificare i record della tabella Customer eseguendo la seguente query.
SELECT * FROM CUSTOMER;
La query precedente produce il seguente output.
ID | Nome | Età | Indirizzo | Stipendio |
---|---|---|---|---|
1 | Ramesh | 32 | Ahmedabad | 2000 |
2 | Khilan | 25 | Delhi | 1500 |
3 | Kaushik | 23 | Kota | 2000 |
4 | Chaitali | 25 | Mumbai | 6500 |
5 | Hardik | 27 | Bhopal | 8500 |
6 | Komal | 22 | MP | 4500 |
7 | Muffy | 24 | Indore | 10000 |
8 | Lokesh | 32 | Hyderabad | 2500 |
Ora proviamo ad aggiornare il record utilizzando il Mergecomando. Di seguito sono riportati i dettagli del record da aggiornare.
Nome colonna | Valore |
---|---|
ID | 8 |
NOME | Loki |
ETÀ | 32 |
INDIRIZZO | Hyderabad |
STIPENDIO | 3000 |
Utilizzare la seguente query per inserire il record specificato nella query del database H2.
MERGE INTO CUSTOMER KEY (ID) VALUES (8, 'Loki', 32, 'Hyderabad', 3000);
La query precedente produce il seguente output.
Update count: 1
Cerchiamo di verificare i record della tabella Customer eseguendo la seguente query.
SELECT * FROM CUSTOMER;
La query precedente produce il seguente output:
ID | Nome | Età | Indirizzo | Stipendio |
---|---|---|---|---|
1 | Ramesh | 32 | Ahmedabad | 2000 |
2 | Khilan | 25 | Delhi | 1500 |
3 | Kaushik | 23 | Kota | 2000 |
4 | Chaitali | 25 | Mumbai | 6500 |
5 | Hardik | 27 | Bhopal | 8500 |
6 | Komal | 22 | MP | 4500 |
7 | Muffy | 24 | Indore | 10000 |
8 | Loki | 32 | Hyderabad | 3000 |