
Il linguaggio SQL (Structured Query Language) è il linguaggio standard per la manipolazione e l’interrogazione di un database. In SQL si possono creare, modificare e cancellare tabelle assieme naturalmente alla loro struttura, e soprattutto interrogare, aggiungere, modificare o cancellare i suoi dati. Lo possiamo intendere quindi come il linguaggio per eccellenza che ci consente di colloquiare con i database. Tre aspetti fondamentali di SQL quindi:
1) l’estrazione di informazioni (QUERY)
2) l’inserimento dei dati (INSERT TO)
3 la modifica dei dai (UPDATE)
Essendo un linguaggio dichiarativo, l’SQL, non richiede la stesura di sequenze di operazioni come i linguaggi imperativi, ma piuttosto di specificare le proprietà logiche delle informazioni ricercate.
Esso si divide in tre sottoinsiemi:
- data definition language (DDL) che permette di creare e cancellare database e di modificarne la struttura
- data manipulation language (DML) che permette di inserire, cancellare, modificare e leggere i dati
- data control language (DCL) che permette di gestire gli utenti
Gli operatori messi a disposizione dall’ SQL standard si dividono in 4 categorie:
1) gli Operatori di CONFRONTO : servono a determinare uguaglianze e disuguaglianze tra valori ed effettuare ricerche all’interno dei dati;
2) gli Operatori ARITMETICI: servono ad effettuare calcoli all’interno di una ricerca; (ad esempio il “+” effettua una addizione, il “-” una sottrazione, il “*” una moltiplicazione ed il “/” una divisione)
3) gli Operatori CONDIZIONALI: l’unico operatore condizionale di SQL è il WHERE (dove) e serve a definire i criteri di ricerca mirati;
4) gli Operatori LOGICI: sono AND (e), OR (o), NOT (non) e possono essere ripetuti più volte all’interno della ricerca.
E poi ci sono i comandi:
- IL COMANDO SELECT ci consente la possibilità di estrarre i dati in maniera mirata dal database. La sintassi del comando SELECT è la seguente:
SELECT lista_elementi_selezione
FROM lista_riferimenti_tabella
SELECT DISTINCT *FROM lista_riferimenti_tabella
l'asterisco permette di includere nella selezione tutte le colonne della tabella.
[WHERE] espressione condizionale
[GROUP BY lista colonne]
[ORDER BY lista colonne]
un esempio puo’ essere:
SELECT DISTINCT cognome,nome,citta’,residenza
FROM utenti
WHERE anni >=18
ORDER BY cognome
la clausola ORDER BY serve per ORDINARE e l’ordinamento viene sempre applicato al primo attributo inserito nella SELECT. In questo caso questa QUERY estrae l’elenco di tutti gli utenti maggiorenni ordinando l’output in base al cognome.
- IL COMANDO INSERT ci consente la possibilità di inserire i dati nelle tabelle. La sintassi del comando di INSERT è la seguente:
INSERT semplice:
INSERT INTO nome_tabella
VALUES (elenco valori, tutti, rispettando l’ordine dei campi della tabella);
oppure
INSERT INTO nome_tabella (elenco dei campi interessati dall’inserimento)
VALUES (elenco valori, tutti, rispettando l’ordine dei campi dichiarati sopra);
Insert mediante select:
INSERT INTO nome_tabella (elenco dei campi interessati dall’inserimento)
ASSELECT ...;
- IL COMANDO UPDATE ci consente la possibilità di modificare i dati nelle tabelle. Il nome di ogni campo che deve essere modificato va dopo la parola SET e deve essere seguito dal simbolo “=” e dal nuovo valore che deve assumere. La sintassi del comando UPDATE è la seguente:
Update generico:
UPDATE nome_tabella
SET nome_campo1 = 'valore1_nuovo',
nome_campo2 = 'valore2_nuovo',
...;
Update con condizione:
UPDATE nome_tabella
SET nome_campo1 = 'valore1_nuovo',
nome_campo2 = 'valore2_nuovo'
WHERE nome_campo3 = 'valore'
- IL COMANDO DELETE ci consente la possibilità di cancellare i dati dalle tabelle. La sintassi del comando DELETE è la seguente:
DELETE FROM nome_talella
WHERE nome_campo=valore
Ovviamente una tabella priva di clausola WHERE cancella tutte le righe della tabella specificata, tuttavia esiste un altro modo per svuotare completamente una tabella, con il comando TRUNCATE TABLE.
Nessun commento:
Posta un commento