Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
MIRAGLIA” - classe VC
INFORMATICA
Linguaggio SQL
Tabelle, Tipi di dati & Interrogazioni
Prerequisiti
➔ Modellazione concettuale e logica di un database
Indice della lezione
➔ Introduzione all’ SQL
◆ DBMS & Linguaggi per il DB
➔ SQL - DDL
◆ Dichiarazione di schemi tabelle
◆ Vincoli
◆ Tipi di dato
➔ SQL - DML
◆ Insert, Delete & Update
➔ SQL - QL
◆ Select semplice
◆ Clausola Where
➔ GameTime: SQL Island
➔ Homework
Indice della lezione Spoiler
➔ Introduzione all’ SQL ● Il gioco è una combinazione tra i tutorial
programmazione e giochi di testo-avventura
◆ DBMS & Linguaggi per il DB
➔ SQL - DDL ● Siamo abbandonati su un'isola e dobbiamo
◆ Dichiarazione di schemi tabelle cercare di lasciarla
◆ Vincoli
● Possiamo guadagnare soldi, vendere oggetti e
◆ Tipi di dato comprare oggetti…. COME? SQL
➔ SQL - DML
◆ Insert, Delete & Update
➔ SQL - QL
◆ Select semplice
◆ Clausola Where
➔ GameTime: SQL Island
➔ Homework
ITIS - ISTITUTO TECNICO INDUSTRIALE “N. MIRAGLIA” - classe VC
Introduzione all’SQL
DBMS & Linguaggi per il DB
Ricapitolando
Modello Logico
Ricapitolando
Modello Logico
Esempio concreto: Cinema
Pensiamo ad un cinema multisala, con varie sedi:
● Il Cinema è identificato da un codice e di essi interessano anche un nome, dalla città e dal numero di sale
● La Sala è identificata dal cinema di appartenenza, un numero univoco e deve essere indicato se è 3D o
meno
● Attori e Registi sono identificati da un codice e di essi interessano anche il nome, nazionalità e l’anno di
nascita
● I Film sono identificati da un codice e di essi interessano anche il titolo, l’anno di produzione, il regista, gli
attori che vi recitano e, per ogni attore, se è protagonista o non protagonista
● La Proiezione è il Film trasmesso in una determinata Sala e viene caratterizzata dalla data, l’ora e il numero
di spettatori
S
DBMS
Database
Q
L
Users
Application
Linguaggi per il Database
SQL
instruction
DDL QL
DML
SQL - DDL
Dichiarazione di schemi tabelle,
Vincoli & Tipi di dati
Linguaggi per il Database
SQL
instruction
DDL QL
DML
D
D
L
Cinema - Modello Fisico
D
D
L
DDL - Istruzioni
Il Data Definition Language (DDL) definisce le istruzioni per creare,
modificare ed eliminare le tabelle dal database relazionale.
L’istruzione definite sono:
● create table viene utilizzata per creare una nuova tabella in un db
CREATE TABLE <nome_tabella> ( nome_colonna tipo, ...);
ATTORE
… … … …
... … … …
Tipi di Dati
Per ogni colonna, durante la creazione di una tabella, bisogna specificare il
tipo di dati che conterrà
CHAR (size) Una stringa di lunghezza FISSA (può contenere lettere, numeri e caratteri speciali)
VARCHAR (size) Una stringa di lunghezza VARIABILE (può contenere lettere, numeri e caratteri speciali).
INTEGER/INT (size) Un numero intero. Size specifica la larghezza massima di visualizzazione (che è 255)
BOOL/BOOLEAN Zero è considerato come falso, i valori diversi da zero sono considerati veri.
nazionalità varchar(4),
748192 … … …
anno_nascita date,
837294 … … …
PRIMARY KEY (codice)
); 748192 … … …
Foreign Key
Il vincolo FOREIGN KEY è una chiave utilizzata per collegare due tabelle
insieme
● Una FOREIGN KEY è un campo in una tabella che fa riferimento alla
PRIMARY KEY in un'altra tabella
SQL - DML
Insert, Delete & Update
Linguaggi per il Database
SQL
instruction
DDL QL
DML
ATTORE
Record { … … … …
My Record { ... … … …
Database
DML - Istruzioni
Il Data Manipulation Language (DML) definisce le istruzioni per inserire,
modificare ed eliminare le righe (record) di una tabella
L’istruzione definite sono:
● insert into è usata per inserire nuovi record in una tabella
INSERT INTO <nome_tabella> (colonna_1, colonna_2, colonna3) values (valore_1, valore_2, valore3);
anno_nascita)
values
(‘21248’, ’Johnny Depp’,
’Statunitense’, ’1963-06-09’)
ATTORE
SQL - QL
Select semplice
& Clausola Where
Linguaggi per il Database
SQL
instruction
DDL QL
DML
Utente
Database DBMS Q Web
Browser
L
FILM
I dati restituiti sono memorizzati in una tabella dei risultati, denominata set
di risultati
< Meno di
SELECT <colonna_1>, <colonna_2> ... FROM <nome_tabella> WHERE condition1 AND|OR condition2 ...;
http://wwwlgis.informatik.uni-
kl.de/cms/courses/informationssysteme/sqlisland
/
ITIS - ISTITUTO TECNICO INDUSTRIALE “N. MIRAGLIA” - classe VC
Homework
Esercizi di pratica da svolgere
Homework
➔ Prendere confidenza con le istruzioni SQL provando a giocare ad SQL
Island
◆ Se vi trovate in situazioni di difficoltà controllate la documentazione su come poter
impostare la query SQL
➔ Libro di testo
◆ Basi di dati. Modelli e linguaggi di interrogazione - CAP 4 (McGraw-Hill
Education)
➔ SQL Island
◆ http://wwwlgis.informatik.uni-
kl.de/cms/courses/informationssysteme/sqlisland/