sql per la modifica di basi di dati db - sql per la modifica di basi di dati2 sql per modificare...
TRANSCRIPT
SQL Per la modifica di basi di dati
DB - SQL per la modifica di basi di dati 2
SQL per modificare basi di dati
Tre istruzioni: InsertDeleteUpdate
Tutti e tre i comandi possono lavorare su insiemi di tuple
E’ possibile fare riferimento ad altre relazioni
DB - SQL per la modifica di basi di dati 3
Insert semplice
Sintassi: INSERT INTO TableName [(ListaAttributi)]
< VALUES (ListaDiValori) | SQLSelect > Esempi:
INSERT INTO Esami(Corso, Matricola, Voto)VALUES (‘DB1’, 123456, 27)
INSERT INTO EsamiVALUES (‘DB1’, 123456, 27)
Deve rispettare l’ordine degli attributi INSERT INTO Studenti(Nome, Matricola)
VALUES (‘Pinco Pallino’, 999999) Gli attributi non specificati (i.e., ‘Indirizzo’ e ‘Telefono’) verranno
inizializzati a NULL L’inserimento fallisce se NULL non e’ permesso per gli attributi
mancanti
DB - SQL per la modifica di basi di dati 4
Insert di piu’ tuple
Sintassi: INSERT INTO Tabella [(ListaAttributi)]
SQLSelect Inserisce piu’ righe con un solo comando Esempio:
Tabella: Indirizzi_Studenti( Indirizzo, Telefono, Email) INSERT INTO Indirizzi_Studenti (Indirizzo, Telefono)
SELECT Indirizzo, TelefonoFROM Studenti
Corrispondenza tra attributi dev’essere rispettata. La seguente query genera errore: INSERT INTO Indirizzi_Studenti
SELECT Indirizzo, TelefonoFROM Studenti
Variazioni sintattiche tra DBMS diversi
DB - SQL per la modifica di basi di dati 5
Delete
Cancellazione di righe da tabelle Sintassi:
DELETE FROM Tabella[WHERE Condizione]
Esempio: DELETE FROM Esami
WHERE Matricola = 123456 Operazione non (facilmente) reversibile Se la condizione e’ omessa cancella l’intero contenuto
della tabella Lo schema resta
DB - SQL per la modifica di basi di dati 6
Delete
La condizione e’ una normale condizione di SELECT
DELETE piu’ complesse, esempio:DELETE FROM Esami
WHERE Matricola NOT IN(SELECT Matricola FROM Studenti)
DB - SQL per la modifica di basi di dati 7
Update
Sintassi: UPDATE Tabella
SET Attributo = Espr {,Attributo = Espr}WHERE Condizione
Esempio: UPDATE Aule
SET Aula = 126WHERE Aula = 3
Esempio: Update Persone
Set Reddito = Reddito * 1.1Where Eta < 30