SlideShare a Scribd company logo
1 of 7
22/07/04 Ing. Ronchi Sergio 1
INSERIMENTO
Inserimento dati:
INSERT INTO PRODOTTI (NOME, PREZZO)
VALUES ('Notebook',1000.50);
INSERT INTO PRODOTTI (NOME, PREZZO)
SELECT 'Scheda di Rete',45.50;
INSERT INTO CLIENTI (CODCLI, NOME, INDIRIZZO)
SELECT CODICE,RAGSOC,INDIRIZZO FROM ANAGRAFICA
Note:
• omettendo dei campi si otterrà come dato un NULL, tuttavia è anche
possibile inserire esplicitamente NULL
• E’ possibile inserire dei valori speciali come SYSDATE
• Per le date è possibile usare la funzione TO_DATE ad esempio:
TO_DATE(‘Feb 3, 1999’,’MON DD, YYYY’)
22/07/04 Ing. Ronchi Sergio 2
INSERIMENTO
Inserimento dati parametrici (script):
INSERT INTO PRODOTTI (NOME, PREZZO)
VALUES (&nome,&prezzo);
Questo permetterà di fare in modo che l’utente riceva un promt di questo
tipo:
Immettere un valore per nome: HD 160GB
Immettere un valore per prezzo: 140.50
22/07/04 Ing. Ronchi Sergio 3
CANCELLAZIONE
Eliminazione:
DELETE FROM PRODOTTI
WHERE CODPRO=999;
DELETE FROM ANAGRAFICA
WHERE YEAR(Data)<1900 AND PROVINCIA=‘MI’;
//elimina tutti I dati e rilascia lo spazio occupato cosa non effettuata
dal DELETE
TRUNCATE TABLE PRODOTTI;
22/07/04 Ing. Ronchi Sergio 4
AGGIORNAMENTO
Aggiornamento dati:
modifica il nome del prodotto con codice 23
UPDATE PRODOTTI SET
NOME='Hard Disk'
WHERE CODPRO=23;
modifica il prezzo, aumentandolo del 10%, di tutti i prodotti
UPDATE PRODOTTI SET
PREZZO=PREZZO*1.1;
modifica il prezzo, aumentandolo del 20% e la descrizione dei prodotti
con codice maggiore di 100
UPDATE PRODOTTI SET
PREZZO=PREZZO*1.2,
DESCRIZIONE ='Lusso'
WHERE CODPRO>100;
22/07/04 Ing. Ronchi Sergio 5
AGGIORNAMENTO
Aggiornamento dati con una sottoquery:
modifica il nome del prodotto con codice 23
UPDATE PRODOTTI SET
NOME=(SELECT NOME FROM PRODOTTI
WHERE CODPRO=100)
WHERE CODPRO=23;
E’ anche possibile usare nella sottoquery altre tabelle.
22/07/04 Ing. Ronchi Sergio 6
MERGE
Permette di realizzare un insert se il dato non esiste o un update se esiste
già.
MERGE INTO copy_emp AS c
USING employee e
ON (c.employee_id=e.employee_id)
WHEN MATCHED THEN
UPDATE SET
c.firstname=e.firsname
.........
WHEN NOT MATCHED THEN
INSERT VALUE (e.employee_id,.........)
22/07/04 Ing. Ronchi Sergio 6
MERGE
Permette di realizzare un insert se il dato non esiste o un update se esiste
già.
MERGE INTO copy_emp AS c
USING employee e
ON (c.employee_id=e.employee_id)
WHEN MATCHED THEN
UPDATE SET
c.firstname=e.firsname
.........
WHEN NOT MATCHED THEN
INSERT VALUE (e.employee_id,.........)

More Related Content

Viewers also liked (11)

Oracle PL sql 2
Oracle PL sql 2Oracle PL sql 2
Oracle PL sql 2
 
Java lezione 11
Java lezione 11Java lezione 11
Java lezione 11
 
Design Patterns
Design PatternsDesign Patterns
Design Patterns
 
Java lezione 14
Java lezione 14Java lezione 14
Java lezione 14
 
Java lezione 8
Java lezione 8Java lezione 8
Java lezione 8
 
Java lezione 9
Java lezione 9Java lezione 9
Java lezione 9
 
Oracle 3 (sq lnet)
Oracle 3 (sq lnet)Oracle 3 (sq lnet)
Oracle 3 (sq lnet)
 
Sql 1
Sql 1Sql 1
Sql 1
 
Java lezione 19
Java lezione 19Java lezione 19
Java lezione 19
 
Oracle PL sql 3
Oracle PL sql 3Oracle PL sql 3
Oracle PL sql 3
 
Java lezione 10
Java lezione 10Java lezione 10
Java lezione 10
 

Similar to Sql 2

Campos calculados
Campos calculadosCampos calculados
Campos calculados
aderlinhc
 

Similar to Sql 2 (12)

Sinfonia in Domino RE - Integrazione Symphony e Lotus Notes 8.x
Sinfonia in Domino RE - Integrazione Symphony e Lotus Notes 8.xSinfonia in Domino RE - Integrazione Symphony e Lotus Notes 8.x
Sinfonia in Domino RE - Integrazione Symphony e Lotus Notes 8.x
 
Basi Di Dati 05
Basi Di Dati 05Basi Di Dati 05
Basi Di Dati 05
 
Basi Di Dati 03
Basi Di Dati 03Basi Di Dati 03
Basi Di Dati 03
 
TYPO3 CMS 7.3 - le novita
TYPO3 CMS 7.3 - le novitaTYPO3 CMS 7.3 - le novita
TYPO3 CMS 7.3 - le novita
 
Lezione07
Lezione07Lezione07
Lezione07
 
Data definition language postgreSQL
Data definition language postgreSQLData definition language postgreSQL
Data definition language postgreSQL
 
Novita TYPO3 CMS 7.2
Novita TYPO3 CMS 7.2Novita TYPO3 CMS 7.2
Novita TYPO3 CMS 7.2
 
TYPO3 CMS 7.5: le novita
TYPO3 CMS 7.5: le novita TYPO3 CMS 7.5: le novita
TYPO3 CMS 7.5: le novita
 
TYPO3 CMS 7.1 - Le novita
TYPO3 CMS 7.1 - Le novitaTYPO3 CMS 7.1 - Le novita
TYPO3 CMS 7.1 - Le novita
 
Campos calculados
Campos calculadosCampos calculados
Campos calculados
 
TYPO3 CMS 8.6 - Le novità
TYPO3 CMS 8.6 - Le novitàTYPO3 CMS 8.6 - Le novità
TYPO3 CMS 8.6 - Le novità
 
Drupal dashboard for dummies with d3
Drupal dashboard for dummies with d3Drupal dashboard for dummies with d3
Drupal dashboard for dummies with d3
 

More from Sergio Ronchi (14)

Java lezione 18
Java lezione 18Java lezione 18
Java lezione 18
 
Java lezione 17
Java lezione 17Java lezione 17
Java lezione 17
 
Java lezione 16
Java lezione 16Java lezione 16
Java lezione 16
 
Java lezione 12
Java lezione 12Java lezione 12
Java lezione 12
 
Java lezione 7
Java lezione 7Java lezione 7
Java lezione 7
 
Java lezione 6
Java lezione 6Java lezione 6
Java lezione 6
 
Java lezione 5
Java lezione 5Java lezione 5
Java lezione 5
 
Java lezione 4
Java lezione 4Java lezione 4
Java lezione 4
 
Java lezione 3
Java lezione 3Java lezione 3
Java lezione 3
 
Java introduzione
Java introduzioneJava introduzione
Java introduzione
 
Oracle PLSql 4
Oracle PLSql 4Oracle PLSql 4
Oracle PLSql 4
 
Oracle PL sql 1
Oracle PL sql 1Oracle PL sql 1
Oracle PL sql 1
 
Oracle 1
Oracle 1Oracle 1
Oracle 1
 
Sql 5
Sql 5Sql 5
Sql 5
 

Sql 2

  • 1. 22/07/04 Ing. Ronchi Sergio 1 INSERIMENTO Inserimento dati: INSERT INTO PRODOTTI (NOME, PREZZO) VALUES ('Notebook',1000.50); INSERT INTO PRODOTTI (NOME, PREZZO) SELECT 'Scheda di Rete',45.50; INSERT INTO CLIENTI (CODCLI, NOME, INDIRIZZO) SELECT CODICE,RAGSOC,INDIRIZZO FROM ANAGRAFICA Note: • omettendo dei campi si otterrà come dato un NULL, tuttavia è anche possibile inserire esplicitamente NULL • E’ possibile inserire dei valori speciali come SYSDATE • Per le date è possibile usare la funzione TO_DATE ad esempio: TO_DATE(‘Feb 3, 1999’,’MON DD, YYYY’)
  • 2. 22/07/04 Ing. Ronchi Sergio 2 INSERIMENTO Inserimento dati parametrici (script): INSERT INTO PRODOTTI (NOME, PREZZO) VALUES (&nome,&prezzo); Questo permetterà di fare in modo che l’utente riceva un promt di questo tipo: Immettere un valore per nome: HD 160GB Immettere un valore per prezzo: 140.50
  • 3. 22/07/04 Ing. Ronchi Sergio 3 CANCELLAZIONE Eliminazione: DELETE FROM PRODOTTI WHERE CODPRO=999; DELETE FROM ANAGRAFICA WHERE YEAR(Data)<1900 AND PROVINCIA=‘MI’; //elimina tutti I dati e rilascia lo spazio occupato cosa non effettuata dal DELETE TRUNCATE TABLE PRODOTTI;
  • 4. 22/07/04 Ing. Ronchi Sergio 4 AGGIORNAMENTO Aggiornamento dati: modifica il nome del prodotto con codice 23 UPDATE PRODOTTI SET NOME='Hard Disk' WHERE CODPRO=23; modifica il prezzo, aumentandolo del 10%, di tutti i prodotti UPDATE PRODOTTI SET PREZZO=PREZZO*1.1; modifica il prezzo, aumentandolo del 20% e la descrizione dei prodotti con codice maggiore di 100 UPDATE PRODOTTI SET PREZZO=PREZZO*1.2, DESCRIZIONE ='Lusso' WHERE CODPRO>100;
  • 5. 22/07/04 Ing. Ronchi Sergio 5 AGGIORNAMENTO Aggiornamento dati con una sottoquery: modifica il nome del prodotto con codice 23 UPDATE PRODOTTI SET NOME=(SELECT NOME FROM PRODOTTI WHERE CODPRO=100) WHERE CODPRO=23; E’ anche possibile usare nella sottoquery altre tabelle.
  • 6. 22/07/04 Ing. Ronchi Sergio 6 MERGE Permette di realizzare un insert se il dato non esiste o un update se esiste già. MERGE INTO copy_emp AS c USING employee e ON (c.employee_id=e.employee_id) WHEN MATCHED THEN UPDATE SET c.firstname=e.firsname ......... WHEN NOT MATCHED THEN INSERT VALUE (e.employee_id,.........)
  • 7. 22/07/04 Ing. Ronchi Sergio 6 MERGE Permette di realizzare un insert se il dato non esiste o un update se esiste già. MERGE INTO copy_emp AS c USING employee e ON (c.employee_id=e.employee_id) WHEN MATCHED THEN UPDATE SET c.firstname=e.firsname ......... WHEN NOT MATCHED THEN INSERT VALUE (e.employee_id,.........)