Il 0% ha trovato utile questo documento (0 voti)
38 visualizzazioni3 pagine

Verifica Informatica

Il documento tratta del linguaggio SQL, standard per la gestione dei database relazionali, e delle sue operazioni fondamentali come la definizione, manipolazione e interrogazione dei dati. Viene discusso anche il modello concettuale e la transizione allo schema logico, evidenziando l'importanza della scelta degli identificatori principali e delle tecniche di ristrutturazione per ottimizzare le prestazioni. Infine, si menzionano le operazioni di join e le condizioni di ricerca per facilitare l'estrazione dei dati.

Caricato da

Luca Pigna
Copyright
© © All Rights Reserved
Per noi i diritti sui contenuti sono una cosa seria. Se sospetti che questo contenuto sia tuo, rivendicalo qui.
Formati disponibili
Scarica in formato PDF, TXT o leggi online su Scribd
Il 0% ha trovato utile questo documento (0 voti)
38 visualizzazioni3 pagine

Verifica Informatica

Il documento tratta del linguaggio SQL, standard per la gestione dei database relazionali, e delle sue operazioni fondamentali come la definizione, manipolazione e interrogazione dei dati. Viene discusso anche il modello concettuale e la transizione allo schema logico, evidenziando l'importanza della scelta degli identificatori principali e delle tecniche di ristrutturazione per ottimizzare le prestazioni. Infine, si menzionano le operazioni di join e le condizioni di ricerca per facilitare l'estrazione dei dati.

Caricato da

Luca Pigna
Copyright
© © All Rights Reserved
Per noi i diritti sui contenuti sono una cosa seria. Se sospetti che questo contenuto sia tuo, rivendicalo qui.
Formati disponibili
Scarica in formato PDF, TXT o leggi online su Scribd
Sei sulla pagina 1/ 3

SQL

SQL: linguaggio dichiarativo diventato standard per gestire i database relazionali (interrogazioni, DLL / DML)
I diversi DBMS offrono implementazioni diverse di SQL e interfacce grafiche
Elementi SQL: istruzioni maiuscole/minuscole è uguale, finiscono con punto e virgola.
Parentesi quadre [ ] elemento opzionale, simbolo | per alternative tra più valori, parentesi graffe { } valori in
alternativa tra loro ma uno deve esserci per forza.
NULL non è uguale a 0 né a stringa vuota, negli ordinamenti è posto all’inizio di sequenze.
Operazioni di definizione dei dati: DLL creazione e modifica tabelle, nei DBMS avvengono attraverso
interfaccia grafica.
Creazione tabella: CREATE TABLE nometabella (Attributo1 Tipo1…) per ogni attributo specifica nome e tipo
Vincoli Intrarelazionali Predefiniti: PRIMARY KEY, NOT NULL, UNIQUE, VALUE BETWEEN, VALUE IN
Vincoli Interrelazionali di integrità referenziale: REFERENCES, FOREIGN KEY, ON, ASSERZIONI
Modifica di tabelle: ALTER TABLE (ADD COLUMN, DROP COLUMN) si può RENAME TO / CHANGE / MODIFY
Manipolazione dei dati: DML inserimento dati nelle tabelle. Comandi INSERT INTO () VALUES () oppure
UPDATE SET / DELETE FROM () WHERE
Interrogazioni: query serve spiegare quali dati ci interessano. Comandi SELECT FROM WHERE
Where: selezione delle righe, Select: proiezione degli attributi, DISTINCT se non vuoi duplicati
Si può ridenominare con SELECT popolazione/superficie AS Densita FROM Nazioni
Condizioni di ricerca uguali = != >= <= Operatori Logici AND OR NOT
Ordinare: ORDER BY → SELECT nome FROM nazioni ORDER BY nome ASC (crescente) DESC (decrescente)
COUNT: conta il numero di righe → SELECT COUNT(*) oppure SELECT COUNT (DISTINCT nome) asterisco mai
perché son sempre tutte diverse
SUM: somma i valori NOT NULL AVG: calcola la media NOT NULL MIN() MAX() minimo, massimo
Raggruppamenti GROUP BY() permette di raggruppare le righe in base al valore di uno o + attributi
Con HAVING() puoi mettere delle condizioni ai gruppi → select nazione from citta group by nazione having…
OPERAZIONI DI JOIN: SELECT attributi FROM tab1, tab2 WHERE condizione (colonna1 = colonna2).
In caso di join naturale aggiungi TABELLA.NOME = TABELLA.NOME2

IN SQL2 si usa INNER JOIN ON


IL MODELLO CONCETTUALE
LO SCHEMA LOGICO
Dato lo schema ER o UML si ricava uno schema logico composto dalle relazioni.
Parametri Prestazioni:
- Costo di un’operazione: numero di istanze di entità e associazioni visitate mediamente per effettuare
le operazioni
- Occupazione di memoria: memorizzare i dati
È necessario conoscere il volume dei dati (numero di istanze di ogni entità e dimensioni di ogni attributo) e le
caratteristiche delle operazioni.
Ristrutturazione dello schema concettuale
Eliminare generalizzazione:
- Accorpamento delle figlie nel padre (aggiungi tipo nel padre)
- Accorpamento del padre nelle figlie (duplica attributi padre nelle figlie)
- Sostituzione con associazioni → risparmio di memoria ma incremento di accessi
Partizionamento ed accorpamento di entità
È utile separare attributi di uno stesso concetto utilizzati da operazioni diverse e raggruppare attributi di
concetti diversi ma utilizzati nelle stesse operazioni
Ridonzanze
Varie forme di ridondanza:
- Attributi derivabili da altri attributi della stessa entità
- Funzioni aggregative o conteggi derivate da attributi di altre entità o associazioni
Scelta degli identificatori principali
La scelta delle chiavi è importante perché stabiliscono legami tra dati in diverse relazioni e vengono costruiti
indici che rendono più efficiente reperire i dati. È preferibile usare:
- Identificatore con pochi attributi, che riduce le dimensioni (risparmio di memoria) utilizzato da +
operazioni
Dallo schema concettuale allo schema relazionale(logico)

Potrebbero piacerti anche