22
Basi di Dati - 2006-2007 (L. Colazzo - F. Magagnino) 1 BASI DI DATI ESERCITAZIONI -1- MSSQL - SQL Email: [email protected] Università di Trento Corso di Laurea in Ingegneria dell’Informazione e dell’Organizzazione

Basi Di Dati 01

Embed Size (px)

Citation preview

Page 1: Basi Di Dati 01

Basi di Dati - 2006-2007 (L. Colazzo - F. Magagnino) 1

BASI DI DATI

ESERCITAZIONI -1-MSSQL - SQL

Email: [email protected]

Università di TrentoCorso di Laurea in Ingegneria dell’Informazione e dell’Organizzazione

Page 2: Basi Di Dati 01

Basi di Dati - 2006-2007 (L. Colazzo - F. Magagnino) 2

DBMSDBMSData Base Management SystemData Base Management System

Un DBMS è un sistema software in grado di gestire efficientemente le

informazioni necessarie ad un sistema informativo, rappresentandone i dati in

forma integrata e garantendone la persistenza.

Page 3: Basi Di Dati 01

Basi di Dati - 2006-2007 (L. Colazzo - F. Magagnino) 3

Architettura a 3 livelli del DBMS [1]

DB (Memoria fisica)

Schema INTERNO

Schema LOGICO

Schema ESTERNO Schema ESTERNO

1

2

3

Page 4: Basi Di Dati 01

Basi di Dati - 2006-2007 (L. Colazzo - F. Magagnino) 4

Architettura a 3 livelli del DBMS [1] Il livello fisico consiste di una serie di file,

residenti su memorie di massa che contengono dati.

Il livello logico consiste nell’astrazione logica con cui i dati vengono resi disponibili all’utente.

Il livello esterno viene costruito a partire dallo schema logico integrato mediante la definizione di viste ad hoc che descrivono parte dello schema logico.

Page 5: Basi Di Dati 01

Basi di Dati - 2006-2007 (L. Colazzo - F. Magagnino) 5

Panorama mercato DBMS [1] Mercato dei DB nel 2004

incremento 11,6% 14,9 miliardi di dollari

Page 6: Basi Di Dati 01

Basi di Dati - 2006-2007 (L. Colazzo - F. Magagnino) 6

Panorama mercato DBMS [1]

Access, Informix, Microsoft Sql Server,

mSql, MySql, Oracle, PostgreSql, Sybase..

linguaggio

SQLSQLStructured Query Language

Page 7: Basi Di Dati 01

Basi di Dati - 2006-2007 (L. Colazzo - F. Magagnino) 7

Panorama mercato DBMS [2] Microsoft Sql Server (2000 sp3):

http://www.microsoft.com/sqlMicrosoft.public.it.sql

MySql (4.0 [Alpha: 5.0]):http://www.mysql.comhttp://www.aspitalia.com/guida/tutorial_MySQL.aspxFree.it.comp.database.mysqlMySQL-Front per GUIDBDesigner 4 per GUIByteFx per ASP.NET

Accesshttp://www.microsoft.com/office/access/ http://scuolesarde.cettolini.it/tutorial/msaccess/

Basi di dati: modelli e linguaggi di interrogazionehttp://www.ateneonline.it/atzeni

Page 8: Basi Di Dati 01

Basi di Dati - 2006-2007 (L. Colazzo - F. Magagnino) 8

Definizioni [1a]

SchemaDescrive la struttura dei dati (parte intensionale)

IstanzaI dati veri e propri (parte estensionale)

Lo schema permette di interpretare i dati dell’istanza.Generalmente un’istanza varia nel tempo, lo scema tende a restare invariato.

Le informazioni gestite da un DBMS sono strutturate.

Page 9: Basi Di Dati 01

Basi di Dati - 2006-2007 (L. Colazzo - F. Magagnino) 9

Definizioni [1b]

SCHEMA

ISTANZA

Page 10: Basi Di Dati 01

Basi di Dati - 2006-2007 (L. Colazzo - F. Magagnino) 10

Definizioni [2a]

IN ISTANZA Campo

Unità minima di informazione dotata di significato. Detto anche attributo

Record (o tupla)Raggruppamento di campi relativi ad un medesimo “oggetto”. I campi vengono usati per descrivere proprietà e caratteristiche dell’oggetto.

Chiave Primaria (Colonna o set di colonne che identificano in modo

univoco tutte le righe di una tabella) Straniera (Corrispondenza tra una colonna o gruppo di colonne di

una tabella e la colonna o il gruppo di colonne chiave primaria di un’altra tabella)

Page 11: Basi Di Dati 01

Basi di Dati - 2006-2007 (L. Colazzo - F. Magagnino) 11

Definizioni [2b]

CAMPO

RECORD

Page 12: Basi Di Dati 01

Basi di Dati - 2006-2007 (L. Colazzo - F. Magagnino) 12

Microsoft SQL Server - MSSQLMicrosoft SQL Server - MSSQL

Client per definizione ed esecuzione di query SQL

Client di amministrazione

Page 13: Basi Di Dati 01

Basi di Dati - 2006-2007 (L. Colazzo - F. Magagnino) 13

DATABASESDATABASES

SERVERSERVER

OPZIONI di DBOPZIONI di DB

Page 14: Basi Di Dati 01

Basi di Dati - 2006-2007 (L. Colazzo - F. Magagnino) 14

NORTHWINDNORTHWINDDIAGRAMDIAGRAM

Page 15: Basi Di Dati 01

Basi di Dati - 2006-2007 (L. Colazzo - F. Magagnino) 15

Uno/Uno

ID

NOME

COGNOME

ID

DATA DI NASCITA

RESIDENZA

CF

Page 16: Basi Di Dati 01

Basi di Dati - 2006-2007 (L. Colazzo - F. Magagnino) 16

Uno/∞

ID

NOME

COGNOME

ID

SETTORE

DISLOCAZIONE SETTORE

Page 17: Basi Di Dati 01

Basi di Dati - 2006-2007 (L. Colazzo - F. Magagnino) 17

∞/∞

ID

NOME

COGNOME

ID

HOBBY

SPECIFICHE DELL HOBBY

Page 18: Basi Di Dati 01

Basi di Dati - 2006-2007 (L. Colazzo - F. Magagnino) 18

NORTHWINDNORTHWINDDIAGRAMDIAGRAM

Page 19: Basi Di Dati 01

Basi di Dati - 2006-2007 (L. Colazzo - F. Magagnino) 19

NORTHWINDNORTHWINDDIAGRAMDIAGRAM

∞ / ∞

1 / ∞

Page 20: Basi Di Dati 01

Basi di Dati - 2006-2007 (L. Colazzo - F. Magagnino) 20

Sintassi per i nomi delle tabelle Una sintassi ottimizzata dovrebbe essere univoca In un db con molte decine di tabelle e consigliabile

utilizzare la sintassi abbreviata: 4 lettere, le prime 4 consonanti del nome della tabella, in assenza di sufficienti consonanti si utilizzano anche le vocali.

ES: Tabella “Clienti” tCliente

Id Cliente Clienti_Id (CLNT_Id) Nome Cliente Clienti_Nome (CLNT_Nome)

Tabella “Ordini” tOrdine Id Ordine Ordini_Id (ORDN_Id) Titolo Ordine Ordini_Titolo (ORDN_Titolo) Id Cliente di quell’ordine Ordini_Clienti_Id (ORDN_CLNT_Id)

Page 21: Basi Di Dati 01

Basi di Dati - 2006-2007 (L. Colazzo - F. Magagnino) 21

ESERCIZIO

Costruire tabelle per inserimento delle circolari: Nome Utente che ha effettuato upload Descrizione Utente che ha effettuato upload Email Utente che ha effettuato upload Descrizione File uploadato File uploadato Data Inserimento del file uploadato Descrizione Anno per cui è rivolto il file Nome dello studente che visualizzerà quel file Cognome dello studente che visualizzerà quel file Matricola dello studente che visualizzerà quel file

Page 22: Basi Di Dati 01

Basi di Dati - 2006-2007 (L. Colazzo - F. Magagnino) 22

ESERCIZIO