SQL e ACCESS. Modello relazionale PROBLEMA ENTITA STUDENTE



Documenti analoghi
Basi di dati. Il Linguaggio SQL. K. Donno - Il Linguaggio SQL

Esercitazione query in SQL L esercitazione viene effettuata sul database viaggi e vacanze che prevede il seguente modello E/R:

SQL (STRUCTURED QUERY LANGUAGE)

Il linguaggio SQL. è di fatto lo standard tra i linguaggi per la gestione di data base relazionali.

1. Schema concettuale della base di dati Lo schema concettuale (o statico) è uno dei due schemi del progetto concettuale di un sistema informativo.

SQL. Linguaggio di interrogazione per basi di dati relazionali. Relazione = tabella con attributi (a 1, a 2,, a n ): Funzionalità principali di SQL:

Esercitazione di riepilogo sulle Query MySQL Giugno 2011 Classe VB Informatica

Corso di Informatica Generale 1 IN1. Linguaggio SQL

SQL (STRUCTURED QUERY LANGUAGE)

Soluzione DDL ed Algebra Relazionale

Esame di Stato Istituto Tecnico Industriale Soluzione della Seconda Prova Indirizzo: INFORMATICA Tema: INFORMATICA Anno Scolastico:

CAPITOLO 4 ESERCIZI SU SQL

Corso di Laboratorio di Basi di Dati

Utilizzando Microsoft Access. Si crea la tabella Anagrafica degli alunni,le Materie e i voti si mettono alcuni campi

Istruzioni DML di SQL

User Tools: DataBase Manager

MAX, SUM, AVG, COUNT)

Basi di Dati Corso di Laura in Informatica Umanistica

Basi di Dati: Corso di laboratorio

I comandi del linguaggio DDL (Data Definition Language): CREATE E ALTER

Modello concettuale dei dati. Paolo Brunasti - UniMiB 1 / 12

M733 ESAME DI STATO DI ISTITUTO TECNICO COMMERCIALE CORSO DI ORDINAMENTO

Corso Sistemi Informativi Avanzati. Programma 30 set Installazione Macchina Virtuale. Introduzione alla BI nelle Aziende.

Volumi di riferimento

Data management a.a Il linguaggio SQL

Storia. Corso di Basi di Dati Spaziali. Componente DDL. Funzionalità. Esempio. Creazione di schema. Linguaggi: SQL. Storia:

Linguaggio SQL. Structured Query Language

Definizione di domini

OR true null false true true true true null true null null false true null false NOT

SQL: concetti base SQL. Definizione dei dati in SQL. SQL: "storia"

S.Q.L. Introduzione a Structured Query Language. I.T.C. "V.Emanuele II" - Perugia. Prof.Claudio Maccherani INDICE

INFORMATICA PER L IMPRESA (Docente Prof. Alfredo Garro) ESERCIZIO 3

SQL -DDL. FONDISTA(Nome, Nazione, Età) GAREGGIA(NomeFondista, NomeGara, Piazzamento) GARA(Nome, Luogo, Nazione, Lunghezza)

ESEMPI DI QUERY SQL. Esempi di Query SQL Michele Batocchi AS 2012/2013 Pagina 1 di 7

ESAME di INFORMATICA e ARCHIVIAZIONE

Esercizio 4.1. Soluzione:

Introduzione a MySQL

Abilità Informatiche A.A. 2010/2011 Lezione 9: Query Maschere Report. Facoltà di Lingue e Letterature Straniere

SQL Sintassi Dei Comandi

DDL, VINCOLI D INTEGRITÁ, AGGIORNAMENTI E VISTE. SQL è più di un semplice linguaggio di interrogazione

Il linguaggio SQL: le basi

a.a. 2012/13 12 Novembre 2012 Preparazione al Test in itinere, Compito A 1. Modellare tramite uno schema entità- relazione la seguente base di dati:

SQL Laboratorio di Basi di Dati a.a. 2002/2003

Linguaggio SQL. Prof. Francesco Accarino IIS Altiero Spinelli Sesto San Giovanni

Istruzioni SQL 1. Query di selezione 2 Istruzione SELECT 2 Istruzione SELECT DISTINCT 2 ORDER BY 3 WHERE 3 La condizione LIKE 4 BETWEEN AND 5

Lezione del modulo 7 SQL e database del giorno 04/05/2006 tot. ore 3. Lo Standard SQL

Domini Numerici Esatti (1) I domini numerici esatti permettono di definire attributi che contenegono valori esatti interi o con parte frazionaria.

SQL. Alcune note sulla definizione dei dati

********************* MODIFICA STRUTTURA DI UNA TABELLA (inserimento di un nuovo campo) ALTER TABLE Personale ADD Nascita date;

MODULO 5 DATA BASE PROGRAMMA. Progettazione rapida introduzione alla progettazione di DB

Insegnamento di Informatica CdS Scienze Giuridiche A.A. 2006/7. Il trattamento dei dati

SQL: definizione schema

ESAME di INFORMATICA e ARCHIVIAZIONE

Il linguaggio SQL. ing. Alfredo Cozzi 1

Esercizi SQL. Dato il seguente schema di una base di dati dove gli attributi che compongono la chiave sono scritti in grassetto

SQL non è solo un linguaggio di interrogazione (Query Language), ma. Un linguaggio per la definizione di basi di dati (Data-definition language (DDL))

Structured Query Language. Informatica Generale - SQL Versione 1.0, aa p.1/172

Il linguaggio SQL: le basi. Versione elettronica: SQLa-basi.pdf

Corso di Informatica (Basi di Dati)

Esercitazione 8 Mercoledì 21 gennaio 2015 (2 ore) DDL e progettazione

PROGRAMMA DI CLASSE 5AI

Preparazione. Introduzione a MySQL: costruzione di una base di dati e gestione degli accessi. Accesso all area condivisa. Avvio Server MySQL

Corso sul linguaggio SQL

SQL: Concetti Base -Prima Parte-

SISTEMI INFORMATIVI E TELEMEDICINA INFORMATICA MEDICA. 3. Panoramica su SQL Prof. Mauro Giacomini

Corso di Basi di Dati A.A. 2014/2015

SQL PER LA DEFINIZIONE DI BASI DI DATI

UNIVERSITÀ DEGLI STUDI DI UDINE Facoltà di Medicina e Chirurgia CORSO DI LAUREA IN TECNICHE DI RADIOLOGIA MEDICA PER IMMAGINI E RADIOTERAPIA ESAME

Informatica per le discipline umanistiche 2 lezione 10

PROGETTAZIONE DI DATABASE Linguaggio SQL

Introduzione al linguaggio SQL

Il Domino Character Il domino CHARACTER permette di definire attributi che contengono un singolo carattere o stringhe di caratteri di lunghezza

Utilizzando Microsoft Access. Si crea la tabella Anagrafica degli alunni,le Materie e i voti si mettono alcuni campi

DBMS (Data Base Management System)

Il linguaggio SQL: DDL di base

INFORMATICA PER L IMPRESA (Docente Prof. Alfredo Garro)

Giovanna Rosone 04/03/ /03/2010 SQL, Istruzioni per la modifica dello schema

Il linguaggio SQL. Massimo Paolucci DIST Università di Genova. SQL: Structured Query Language

Il linguaggio SQL e Access

IL LINGUAGGIO SQL IDENTIFICATORI E TIPI DI DATI COMANDI E ISTRUZIONI

Basi di dati e sistemi informativi I


DUE GRUPPI DI COMANDI

Corso di Laurea in Ingegneria Informatica Algoritmi e basi di dati Modulo Basi di dati a.a

Basi di Dati 1 Prof. L. Tanca e F. A. Schreiber APPELLO DEL 9 SETTEMBRE 2015 Tempo: 2h30m

Linguaggio SQL: fondamenti D B M G. Gestione delle tabelle

DATA BASE MANAGEMENT SYSTEM

Basi di Dati 1 Prof. L. Tanca e F. A. Schreiber APPELLO DEL 21 LUGLIO 2015 Tempo: 2h30m

Archivi e Basi di Dati

Capitolo 4. Soluzione: Soluzione: Create domain STRING as character varying (256) default sconosciuto not null

Vogliamo creare una anagrafe e poi creare delle query che rispondono a delle domandi. Utilizzando Microsoft Access

Transcript:

SQL e ACCESS Prof. Salvatore Multazzu (salvatoremultazzu@tiscali.it) Applicazioni Informatiche nella comunicazione Modello relazionale Entità Record o Ennuple Attributi o Campi Tipi Chiavi Primarie (PK) Chiavi esterne (FK) Università degli studi di Sassari 2 PROBLEMA ENTITA STUDENTE Realizzare un DataBase per memorizzare i dati relativi agli Studenti di una Facoltà ai Corsi seguiti, agli Esami sostenuti ed ai Docenti interessati. Matricola (Tipo Testo) PK Nome (Tipo Testo) Cognome (Tipo Testo) Indirizzo (Tipo Testo) Città (Tipo Testo) Note_studente (Tipo Testo) Matricola Nome Cognome Indirizzo STUDENTE Citta Note_studente Università degli studi di Sassari 3 Università degli studi di Sassari 4

ENTITA DOCENTE ENTITA CORSO CD (Tipo Testo) PK Nome (Tipo Testo) Cognome (Tipo Testo) Città (Tipo Testo) Nome DOCENTE Cognome Citta CD CC (Tipo Testo) chiave primaria Nome (Tipo Testo) CORSO Nome CC Università degli studi di Sassari 5 Università degli studi di Sassari 6 SCHEMA E/R STUDENTE DOCENTE 1 Nome Cognome N CORSO Nome CD Citta DATA MATRICOLA VOTO Esam e 1 N N 1 CC Citta Nome Cognome Indirizzo STUDENTE Note_studente CREATE TABLE STUDENTE (MATRICOLA CHAR(8), NOME char() NOT NULL, COGNOME char() NOT NULL, INDIRIZZO char(40), CITTA char(2), NOTE_STUDENTE memo, CONSTRAINT pk_studenti PRIMARY KEY(MATRICOLA)); Università degli studi di Sassari 7 Università degli studi di Sassari 8

DOCENTE CREATE TABLE DOCENTE (CD INTEGER, NOME text() NOT NULL, COGNOME text() NOT NULL, CITTA text(2), CONSTRAINT pk_docente PRIMARY KEY(CD) ); CORSO CREATE TABLE CORSO (CC char(2), Nome char() NOT NULL, CD INTEGER, CONSTRAINT pk_corso PRIMARY KEY(CC), CONSTRAINT fk_corso_docente FOREIGN KEY (CD) REFERENCES DOCENTE(CD) ); Università degli studi di Sassari 9 Università degli studi di Sassari 10 ESAME FINESTRA QUERY CREATE TABLE ESAME (MATRICOLA CHAR(8), CC CHAR(2), VOTO SMALLINT, DATA DATE NOT NULL, CONSTRAINT pk_esamisostenuti PRIMARY KEY(MATRICOLA,CC), CONSTRAINT fk_esami1 FOREIGN KEY (MATRICOLA) REFERENCES STUDENTE(MATRICOLA), CONSTRAINT fk_esami2 FOREIGN KEY (CC) REFERENCES CORSO(CC) ); Università degli studi di Sassari 11 Università degli studi di Sassari 12

FINESTRA TABELLE FINESTRA RELAZIONI Università degli studi di Sassari 13 Università degli studi di Sassari 14 ALTER TABLE FINESTRA RELAZIONI (2) ALTER TABLE CORSO ADD COLUMN DATA_INIZIO DATE, DATA_FINE DATE, DURATA_CORSO CHAR; ALTER TABLE CORSO ALTER COLUMN DURATA INTEGER; ALTER TABLE STUDENTE ADD COLUMN Eta INTEGER; Università degli studi di Sassari 15 Università degli studi di Sassari 16

DML INSERT UPDATE DELETE STUDENTE INSERT INTO DOCENTE (CD, NOME, COGNOME) VALUES ( 15, Andrea, Rossi ); INSERT INTO DOCENTE VALUES ('14', 'ANNA', 'GREEN','SS'); UPDATE ESAMI SET Voto = Voto+1 WHERE Voto < 24; DELETE FROM STUDENTE WHERE Eta > 50; Università degli studi di Sassari 17 Università degli studi di Sassari 18 CORSO e DOCENTE ESAME Università degli studi di Sassari 19 Università degli studi di Sassari 20

SELECT (1) SELECT (2) SELECT NOME, COGNOME FROM STUDENTE WHERE eta > 24 ORDER BY COGNOME ; SELECT * FROM STUDENTE WHERE COGNOME LIKE P* AND (Eta > 24) ORDER BY Eta DESC; Università degli studi di Sassari 21 Università degli studi di Sassari 22 CARATTERI JOLLY BETWEEN ACCESS * usato con LIKE % Ansi SQL SCOPO Zero o più caratteri SELECT NOME, COGNOME, ETA FROM STUDENTE WHERE Eta Between 21 And 25;? usato con LIKE _ Carattere singolo # usato con LIKE Nessun equivalente Singola cifra da 0 a 9 Università degli studi di Sassari 23 Università degli studi di Sassari 24

BETWEEN (2) SELECT * FROM CORSO WHERE DATA_INIZIO BETWEEN #9/12/05# AND #9/21/05# ; SELECT (3) SELECT * FROM ESAME WHERE VOTO > 27 AND DATA< #5//04#; Università degli studi di Sassari 25 Università degli studi di Sassari 26 FUNZIONI DI AGGREGAZIONE SELECT (4) SELECT COUNT(*) FROM Studente; SELECT SUM(Eta) FROM Studente; SELECT AVG(Eta) AS Media FROM Studente; SELECT MIN(Eta) AS Minimo FROM Studente; Conta il numero di record nella tabella studenti Somma le età di tutti gli studenti Restituisce la media delle età degli studenti e rinomina il campo Media Restituisce la più piccola delle età degli studenti e rinomina il campo Minimo SELECT CITTA, AVG(Eta) AS Media FROM STUDENTE GROUP BY CITTA; CITTA CA NU OR Media 24,3 26 27,5 SS 26,6 Università degli studi di Sassari 27 Università degli studi di Sassari 28

SELECT (5) SELECT Min(VOTO) AS VOTO_MINIMO FROM ESAME WHERE DATA Between #1/1/2004# And #12/4/1931#; VOTO_MINIMO 18 SELECT Max(VOTO) AS VOTO_MASSIMO FROM ESAME WHERE DATA Between #1/1/2004# And #12/4/1931#; VOTO_MASSIMO Operatori AND OR NOT BETWEEN = <> LIKE <, <= >, >= Università degli studi di Sassari Università degli studi di Sassari RELAZIONI (JOIN) SINTASSI: SELECT <listaselect> FROM nome_tabella INNER JOIN tabelle_join ON criterio_join [WHERE <condizione>] [ORDER BY <lista-order>] INNER JOIN (1) SELECT CC, Corso.Nome, Cognome FROM Docente INNER JOIN Corso ON Docente.CD = Corso.CD WHERE Cognome= Rossi ; CC Nome S1 FONDAMENTI S3 SISTEMI INF Cognome ROSSI ROSSI S4 ROSSI Università degli studi di Sassari 31 Università degli studi di Sassari 32

MATRICOLA NOME COGNOME VOTO INNER JOIN (2) P234590 P500101 P500101 P500101 DIRITTO IST APPLICATA CARTA BARBI BARBI BARBI 28 APPLICATA SISTEMI INF ECONOMIA 28 SELECT S.MATRICOLA, C.NOME, COGNOME, VOTO FROM STUDENTE AS S INNER JOIN (CORSO AS C INNER JOIN ESAME AS E ON C.CC = E.CC ) ON S.MATRICOLA=E.MATRICOLA WHERE VOTO>26; P500422 P500422 P500456 P500466 P500466 P500466 P500466 DIRITTO IST ECONOMIA INGLESE SISTEMI INF DIRITTO IST INGLESE SECCI SECCI FIORE MARRAS MARRAS MARRAS MARRAS 27 28 27 P600123 PIRAS P600123 DIRITTO IST PIRAS P600123 ECONOMIA PIRAS P800090 APPLICATA SCARPA 27 P800090 INGLESE SCARPA P900400 SISTEMI INF ONOFRI 27 P900421 FONDAMENTI PREMOLI Università degli studi di Sassari 33 P900421 APPLICATA PREMOLI Università degli studi di Sassari 34 P900421 SISTEMI INF PREMOLI P900421 DIRITTO IST PREMOLI