Maxial2002 - SQL lezione 1

SQL(structure query language)

Il linguaggio SQL è usato in access per sostituire i comandi. Si possono fare tante cose: dalla creazione delle tabelle alle ricerche. Si possono quindi compiere manipolazioni ed interrogazioni.

In access per creare una query bisogna andare sul pulsante QUERy a sinistra, nuova query. Verrà visualizzata una finestra che chiede che TAbella scegliere, freghiamocene e facciamo annulla. Sulla TOOLBAR (barra degli strumenti) c'è un pulsante a tendina. CLiccando sulla freccetta si può visualizzare la query in diversi modi (come le tabelle : in visual. struttura ecc..). Noi scegliamo SQL.
Comparirà una finestra di testo con la scritta select; Per eseguire una query premere ! sulla toolbar. Adesso ci sono un po' di query-.-

* creazione tabella

CREATE TABLE nometabella
(nomeattributo text(20),
nomeattributo integer) ;

Con questo comando creo una tabella con i campi nomeattributo. nota che per separarli ci serve la virgola!

*modifica tabella

ALTER TABLE nometabella
ADD campodaaggiungere;

ALTER TABLE nometabella
DROP campodatogliere;

Questi comandi modificano la struttura della tabella, servono infatti ad aggiungere dei campi (delle colonne in sostanza)
Come tab_alunni aggiungiamo indirizzo:

ALTER TABLE tab_alunni
ADD indirizzo text(20);

*cancella una tabella

DROP TABLE nometabella;

* Aggiunta di dati

INSERT INTO nometabella (campo1,campo2) come: nome, cognome
VALUES (valore1,valore2) come: '"alessandro","masin"

*cancellazione REcord

DELETE FROM nometabella
WHERE nomecampo=10

esempio
DELETE FROM tab_alunni
WHERE nome="alessandro"
in poche parole cancella il record che ha come nome alessandro

*modificare un record
UPDATE nometabella
SET nomecampo = valore
WHERE nomecampo = valore

Modifica il campo nomecampo con il valore impostato con l'istruzione SET , dove (WHERE) il campo ha valore x...
Insomma, se voglio che tutti i campi voto che hanno valore 5 diventino 6 devo fare

UPDATE compito
SET voto = 6
WHERE voto = 5

SELECT
Come interrogare il database!
Struttura generale :

SELECT nomecampidafarvedere
FROM tabelladadovepescareidati
WHERE il criterio della selezione, come seleziono tutti i cITTà="Torino"

NB : il valore * (jolly o asterisco) sostituisce il nome dei campi, cioè significa TUTTO. Così vengono elencati tutti i campi della tabella se faccio SELECT *

Operatori:
OR,AND = COMBINARE DUE O PIù CONDIZIONI, se tutte e due vere o solo una.

SELECT cognome, nome , descrizione
FROM personale, società
WHERE filiale = codicefiliale
AND funzione='impiegato';

FUNZIONI DI AGGREGAZIONE COUNT = da come risultato un valore , il numero di ...
esempio :
SELECT COUNT(*)
FROM tabella
WHERE provincia='VR';
Conta tutti i record che hanno vr come provincia

SUM= fa la somma dei valori nei campi
SELECT SUM(stipendi)
FROM tab_dipendenti
WHERE livellodipendente=5
Somma gli stipendi dei dipendenti che hanno livello 5

AVG = media MIN=minimo e MAX=massimo

condizioni e operatori di ricerca
LIKE BETWEEN IN E IS NULL


GLI INSERISCI PARAMETRICI :

PARAMETERS matr integer,
cogn text(20);
INSERT INTO tab_alunni(matricola,cognome)
VALUES (matr,cogn)


modifica parametrico:
PARAMETERS mat integer,
cogn text(20);
UPDATE tab_alunni
SET cognome=cogn
WHERE matricola=mat

in poche parole modifica la tabella alunni , i record dove la matricola è la matricola MAT (che ti viene chiesta all'esecuzione) sostituendo il cognome della tab_Alunni con COGN (che ti viene chiesto all'esecuzione della query)