I.I.S. G. COSSALI - ORZINUOVI DATABASE. Marzo 2017 Prof. Dario Tomasoni 1

Documenti analoghi
Bibliografia. INFORMATICA GENERALE Prof. Alberto Postiglione. Scienze della Comunicazione Università di Salerno. Definizione di DB e di DBMS

DBMS (Data Base Management System)

DATABASE PER IL WEB. Programmazione Web 1

Manuale SQL. Manuale SQL - 1 -

Domande utili alla preparazione dell orale di Informatica all Esame di Stato

PROGETTAZIONE DI DATABASE Linguaggio SQL

Caratteristiche dei linguaggi per Database

Introduzione Concetti Generali Pratica su Access Link utili. ECDL - Database. European Computer Driving Licence - Modulo 5 - Database LEZIONE 1

V. Moriggia Modelli di Base Dati. Modelli di Base Dati. a.a. 2001/

Informatica per le Scienze Umane. Introduzione al corso: programma dettagliato

Elena Baralis 2007 Politecnico di Torino 1

Laboratorio di Basi di Dati

Le basi di dati. Le basi di dati. dalla teoria all'utilizzo di tutti i giorni. Alessandro Tanasi

LABORATORIO di INFORMATICA

Il sistema informativo deve essere di tipo centralizzato e accessibile mediante un computer server installato nella rete locale dell albergo.

SISTEMI OPERATIVI, RETI, INTERNET

Laboratorio di Basi di Dati

Esempio di database relazionale con l utilizzo del prodotto MySQL

SQL - Structured Query Language

SQL quick reference. piccolo manuale di riferimento dei principali comandi SQL (prof. Claudio Maccherani, Perugia, 2013)

Informatica per le Scienze Umane. Introduzione al corso: programma

Utilizzo delle Maschere in Microsoft Access

Structured. Language. Basi di Dati. Introduzione. DDL: Data Definition Language. Tipi di dato. Query. Modifica dei Dati

Dipartimento di Scienze Umane Corso di studi in Marketing & digital communication. Project work. Data Mining e IT. Database

Corso di Informatica Generale 1 IN1. Linguaggio SQL

Basi di Dati: Corso di laboratorio

SQL. Laboratorio di Progettazione di Basi di Dati (CdS in Informatica e TPS)

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

Tabelle esempio: Impiegato/Dipartimento

2011 Politecnico di Torino 1

MODULO 2. Query normali e parametriche Query di:

ISTITUTO PARITARIO MICHELANGELO - RIMINI- PIANO DI LAVORO

SQL e ACCESS. Modello relazionale PROBLEMA ENTITA STUDENTE

Sommario. Introduzione... 13

SQL: DDL, VI, Aggiornamenti e Viste

Interrogazioni nidificate

Introduzione al linguaggio SQL

Database Lezione 2. Sommario. - Progettazione di un database - Join - Valore NULL - Operatori aggregati

Data Base. Master "Bio Info" Reti e Basi di Dati Lezione 6

Principi di Progettazione del Software a.a Il linguaggio SQL. Prof. Luca Mainetti Università del Salento

Basi di Dati: Corso di laboratorio

Le Basi di Dati. Le Basi di Dati

SISTEMI INFORMATIVI E DATABASE

Il linguaggio SQL: autorizzazioni

Basi di Dati CREAZIONE E POPOLAMENTO DI UNA BASE DI DATI

Relazioni e tabelle. Introduzione alle Basi di Dati Relazionali. Relazioni uno a uno. Esempio

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

Connessione con MySQL

Informatica e Bioinformatica: Basi di Dati

Soluzione esercitazione 01

I database. Introduzione alla teoria delle basi di dati

MySQL Database Management System

4/16/07. Le Basi di Dati Relazionali. Concetti Fondamentali. Base di dati, tabella, ennupla, attributo, dominio. Valori nulli

σ data 15/12/2013 data 20/12/2014

Interrogare una base di dati: algebra relazionale e SQL. Savino Castagnozzi Giorgio Macauda Michele Meomartino Salvatore Picerno Massimiliano Sartor

Ripasso Concetti Pratica in Access Link utili. ECDL - Database. European Computer Driving Licence - Modulo 5 - Database LEZIONE 3

L ARCHIVIAZIONE E LA GESTIONE DATI ATTRAVERSO L INTERAZIONE TRA MICROSOFT ACCESS ED EXCEL 1 INTRODUZIONE

QGIS - query, geoprocessing e link

SQL (STRUCTURED QUERY LANGUAGE)

Structured Query Language

Informatica per le discipline umanistiche 2 lezione 10

Corso base SQLite. Copyright (c) 2015 Antonio Gallo

Laboratorio di Basi di Dati Esercizio 8.4/9.1

Pag Politecnico di Torino 1

Appunti di MySql. Evoluzione di un tutorial di base di mysql, scritto da Etel Sverdlov.

Basi di dati. Basi di dati = database

Structured Query Language parte 1

CURRICOLO DIPARTIMENTO INFORMATICA PRIMO BIENNIO

ASP e Database. A cura di Michele Cavalieri

DATABASE.

Utilizzo delle Maschere in Microsoft Access

Cosa sono le maschere

Database Modulo 4 RELAZIONI TRA TABELLE

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

Il linguaggio SQL. Il linguaggio SQL. Il linguaggio SQL. Il linguaggio SQL. Il linguaggio SQL: fondamenti. Il linguaggio SQL

Basi di Dati. Corso di Informatica. Memorizzazione dei Dati. Accesso ai Dati. Corso di Laurea in Conservazione e Restauro dei Beni Culturali

ESEMPIO DI TRIGGER PER IL CONTROLLO DELLE PROPRIETÀ COPERTURA DI UNA GERARCHIA (ARGOMENTO SVOLTO IN CLASSE IL 25 MAGGIO 2011)

MODULO 5 - USO DELLE BASI DI DATI 2 FINALITÁ

Informatica B. Contenuti. Introduzione alle Basi di Dati e ai DBMS. Introduzione a dati e basi dati DBMS Modello dei dati

C3 IL DBMS MICROSOFT ACCESS

PRINCIPI DI INFORMATICA CORSO DI LAUREA IN SCIENZE BIOLOGICHE

Interrogazioni nidificate

(Lezione SQL 2) Barbara Di Camillo Dipartimento di Ingegneria dell Informazione. Università degli Studi di Padova

Le basi di dati. Lez. 3: Il Modello Relazionale

SQL Server BI Development Studio. SQL Server Business Intelligence Development Studio. Analysis Services

INFORMATICA. Applicazioni WEB a tre livelli con approfondimento della loro manutenzione e memorizzazione dati e del DATABASE.

Uso delle basi di dati DBMS. Cos è un database. DataBase. Esempi di database

Unità 2.2 Comandi sulle tabelle

Analysis Service. Dutto Riccardo IPSI - tel Dutto Riccardo - SQL Server 2008.

Basi di dati. Basi di dati = database. Basi di dati

MS Access: Tutorial Tabelle, Relazioni

Corso di Informatica. Software di produttività personale e database. Ing Pasquale Rota

Le query di comando e di servizio in Access

INTRODUZIONE ALLE BASI DATI RELAZIONALI

Il modello relazionale

MY SQL Guida MySQL di base

Relazioni. Microsoft Access. Relazioni. Relazioni

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

Corso di Access. Prerequisiti. Modulo L2 A (Access) Le query

Manuale Utente Webbiobank

Transcript:

I.I.S. G. COSSALI - ORZINUOVI DATABASE Marzo 2017 Prof. Dario Tomasoni 1

IMPOSTAZIONE 60 min = Database concetti + Esercizi; 10 min = pausa; 30 min = Linguaggio SQL; 30 min = Database prove LibreOffice Base; 10 min = pausa; 30 min = SQLite + SQLiteBrowser; 2

DATABASE Database = un contenitore di dati organizzati secondo una logica, che possono essere inseriti, eliminati, aggiornati, estratti in modo veloce, efficiente e sicuro; Sono dappertutto: biblioteche, uffici, enti pubblici, ospedali, banche, questure, ferrovie, aeroporti, ecc ovunque ci siano dati da memorizzare. 3

DBMS DBMS = (Data Base Management System) è il software che permette di gestire il database. E il gestore del database. E un software che si interpone tra il contenitore di dati e l applicazione (o le applicazioni) che vogliono accedere (anche simultaneamente) ai dati: il bibliotecario nella biblioteca; Il cancelliere nel tribunale; L archivista per un archivio; 4

LOCALI Vs. DI RETE LOCALE: memorizzato sullo stesso dispositivo nel quale sono installate le applicazioni che lo usano; DI RETE: memorizzato su un Server, al quale si accede attraverso una rete da un Client nel quale sono installate le applicazioni che lo usano; 5

DBMS ESEMPI https://it.wikipedia.org/wiki/database_management_system#database_management_system_.28dbms.29 Microsoft Access (locale) LibreOffice Base (locale) Microsoft SQL Server (di rete) MySQL (di rete) SQLite (locale Android) e altri 1.000 (FireBird, MongoDB, ecc) 6

SQL SQL = (Structured Query Language) è il linguaggio con il quale è necessario parlare al DBMS per gestire un database; Ha un fondamento matematico preciso (Algebra Relazionale di Codd), che non vedremo perché non me la ricordo Il senso è il seguente: ogni operazione che un applicazione vuole fare su dei dati deve passare attraverso un DBMS. Per spiegare al DBMS cosa deve fare sui dati nel database (inserire, cancellare, aggiornare, ecc) devo inviare alcuni comandi con una sintassi apposita e parole chiave apposite. lo vediamo più avanti. 7

STRUTTURA DI UN DATABASE Un database prima di essere scritto e utilizzato deve essere pensato. Il metodo principale (peraltro unico che mi ricordo) per definire un database è utilizzare il Modello E- R. Bisogna fare il seguente ragionamento: Un database è un contenitore di dati di una certa realtà: Su cosa mi interessa raccogliere i dati? Quali dati nello specifico mi interessa raccogliere? Che tipo di dati sono quelli che mi interessano? 8

ENTITA Su cosa mi interessa raccogliere i dati? La risposta alla domanda permette di trovare le entità di una database: gli oggetti che compongono la mia realtà. Esempi: REALTA Scuola Supermercato Ditta ENTITA Studenti, Docenti, Personale, Voti, Attrezzature, ecc Prodotti, Scaffali, Attrezzature, Personale, Clienti, Fornitori, ecc Clienti, Fornitori, Personale, Commesse, Fatture, Pagamenti, Banche, Cantieri, ecc 9

ATTRIBUTI Quali dati nello specifico mi interessa raccogliere? La risposta alla domanda permette di trovare gli attributi (o campi) di una entità: le singole informazioni possono caratterizzare un oggetto. Esempi: ENTITA Studente Cliente Fattura ATTRIBUTI Nome, Cognome, Cod.Fisc, DataDiNascita, Nazionalità, ecc Denominazione, Telefono, Mail, PEC, Indirizzo, ecc Data, Importo, %Iva, Scadenza, Stato, ecc 10

TIPI DI DATI Che tipo di dati sono quelli che mi interessano? La risposta alla domanda permette di trovare il tipo di dato da associare all attributo. Esempi: ATTRIBUTO Nome AnnidiEsperienza DataDiNascita TIPO DI DATO Testo Intero Data 11

A LATO PRATICO Una volta individuate le entità, gli attributi e il tipo di dato, capita la logica, si può passare all aspetto pratico; Ogni entità diventa una TABELLA da compilare, dove ogni attributo corrisponde ad una COLONNA della tabella e le istanze della entità corrispondono alle RIGHE. Le istanze sono meglio conosciute come i RECORD 12

ESEMPIO RUBRICA ID NOME INDIRIZZO TELEFONO 1 Verardi Andonio Via Saluta, 83 030 941027 2 Tomasoni Dario Via Vai, 1984 030 030030 3 Pallino Pinco Via Tizio, 00 030123456 13

CHIAVI CHIAVE PRIMARIA: è un campo/attributo necessario in ogni entità che serve per identificare (e dunque poter ricercare, cancellare, modificare) univocamente un record all interno di una tabella. NON possono esistere due chiavi primarie con lo stesso valore nella stessa tabella ESEMPI Numero di matricola; Numero della carta di credito; Nome utente; 14

ESERCIZI Database della scuola (almeno 4 entità, 3 attributi per entità) Database di una biblioteca (almeno 4 entità, 3 attributi per entità) Database di un negozio di tatuaggi (almeno 4 entità, 3 attributi per entità) Database di un orto (almeno 4 entità, 3 attributi per entità) 15

SQL 1 E il linguaggio presente in ogni database ed è utilizzato sia per lavorare sulla struttura (creare, modificare, eliminare tabelle e database) sia per operare sui dati (inserire, modificare, cancellare record) Vedremo come: Creare una tabella Inserire un record Selezionare uno o più record Modificare una tabella Aggiornare un record Eliminare un record 16

SQL 2 CREATE TABLE tabella1 ( campo1 INTEGER PRIMARY KEY AUTOINCREMENT, campo2 TEXT NOT NULL, campo3 TEXT NOT NULL ); Crea una entità/tabella di nome tabella nella quale sono con predisposti 3 campi: il campo1 che è la chiave primaria, numero intero e che si autoincrementa da sola, il campo2 che è un testo che deve essere compilato per forza, e il campo3 che è un testo che deve essere compilato per forza. 17

SQL 3 INSERT INTO tabella1 (campo1,campo2,campo2) VALUES ( NULL, dato2, dato3 ); Inserisco nella tabella1 rispettivamente nei campi campo1, campo2, campo3 i valori NULL (in quanto si autoincrementa da sola), dato2 e dato3 18

SQL 4 SELECT * FROM tabella1; Mostra tutte le colonne della tabella1 SELECT campo1,campo2 FROM tabella1 ORDER BY campo1; Mostra le colonne campo1 e campo2 della tabella1 ordinandole secondo il valore di campo1 SELECT * FROM tabella1 WHERE campo1=3; Mostra tutte le colonne della tabella1 a condizione che il campo1 sia uguale a 3 19

SQL 5 ALTER TABLE tabella1 ADD COLUMN campo4 INTEGER; Modifica la struttura della tabella1, aggiungendo un nuovo campo4 di tipo intero; UPDATE tabella1 SET campo4=3 WHERE campo1=2; UPDATE tabella1 SET campo4=3; Inserisce il valore 3 nel campo4, nel primo caso solo nei record il cui campo1 è uguale a 2, nel secondo caso in tutti i record 20

SQL 6 DELETE FROM tabella1 WHERE campo1=2; Elimina dalla tabella1 il record il cui campo1 è uguale a 2; SELECT campo1,campo1 FROM tabella1,tabella2 WHERE tabella1.chiavesec1=tabella2.chiaveprim; Mostra il campo1 della tabella1 e il campo1 della tabella2 a patto che il valore dell attributo chiavesec1 della tabella1 sia uguale al valore del campo chiaveprim (nonché chiave primaria) della tabella2 (concetto di relazione). 21

SQLite TUTORIAL NO PANIC!!! Nella maggior parte dei casi si può utilizzare la strategia di compilare un database attraverso un interfaccia grafica. Impostare le ricerche in modo grafico e copiarne il corrispettivo codice SQL. https://www.tutorialspoint.com/sqlite/ 22

ESERCIZI LIBREOFFICE BASE Implementare il Database della scuola (almeno 4 entità, 3 attributi per entità) utilizzando LibreOffice Base. Provare a creare delle query (riceche) attraverso l interfaccia grafica e a visualizzare il relativo codice SQL autocompilato; Spaciugare 23

ESERCIZI SQLite BROWSER Installare SQLite Browser Reimplementare il Database della scuola (almeno 4 entità, 3 attributi per entità) salvandolo nel formato *.db. Spaciugare 24