3b-Basi di dati relazionali ad oggetti
|
|
- Cipriano Molinari
- 5 anni fa
- Visualizzazioni
Transcript
1 Approccio Object Object-Relational (ORDBMS) 3b-Basi di dati relazionali ad oggetti I database orientati agli oggetti non hanno allo stato avuto adeguato successo perché non hanno offerto efficienza pari ai collaudati RDBMS. L approccio Object-Relational invece si presenta come evolutivo rispetto alle basi dati relazionali, ponendosi come obiettivo: estensioni compatibili con la nozione di tabella. la possibilità di esprimere la maggior parte dei concetti dei DB puri ad oggetti. 1 2 Modello dei dati di SQL:1999 E compatibile con il modello relazionale ad es: create table PERSONE( Nome varchar(30) not null Residenza varchar(30) Codfisc char(16)primary key ); L approccio ORDBMS suggerisce di definire prima il tipo tupla (row) della tabella PERSONE, chiamiamolo TipoPersona, per renderlo riusabile. L uso di tipi strutturati, che estendono la nozione classica di dominio ( tipo distinto in SQL:1999), consente essenzialmente di costruire la struttura delle tuple (row) da inserire in tabella. Tipi strutturati parte statica Definizione della tabella persona : create type TipoPersona as( Nome varchar (30), Residenza varchar(30), CodFisc char(16) ) ; create table PERSONE of TipoPersona; : il tipo ammette la definizione di sottotipi; 3 4
2 Tipi strutturati Tecnicamente una relazione - come PERSONE, dichiarata con il tipo riga - TipoPersona, non è un insieme di triple bensì una relazione unaria, le cui tuple sono oggetti con tre componenti: (Nome, Residenza, Codfisc). Riferimenti Se T è un tipo, allora REF T è il tipo di un riferimento to T, cioè, un puntatore ad un oggetto di tipo T. Viene spesso chiamato nei sistemi Object Oriented un ID di oggetto, OID. A differenza degli OID, un REF è visibile, anche se normalmente non ha significato 5 6 Riferimenti (2) create type TipoCostr( Presidente ref (TipoPersona), Stabilimento ref (TipoStabilimento) Nome varchar (20) ); Gli oggetti TipoCostr hanno il seguente aspetto: Tipi strutturati approfondimento (1) Definizione della tabella persona in SQL:1999 create type TipoPersona as (Nome varchar (30), Residenza varchar(30), CodFisc char(16)) ref from (CodFisc) create table PERSONE of TipoPersona ( ref is CodFisc derived); Ad un oggetto TipoPersona F I A T Ad un oggetto TipoStabilimento 7 ref from (CodFisc): Codfisc è l attributo da utilizzare per realizzare riferimenti a istanze del tipo. ref is CodFisc derived: specifica che l identificatore è derivato dal valore dell attributo CodFisc. 8
3 Tipi strutturati approfondimento (2) Possibile riuso del tipo persona Esempio di tipi strutturati Create table INDUSTRIALI of TipoPersona ( Ref is CodFisc derived) Create table PILOTI of TipoPersona ( Ref is Codfisc derived ) Si notino le corrispondenze: (tupla, oggetto) (tabella, classe) conformemente ai DB ad oggetti Esempio tipi strutturati Consideriamo la definizione dei corrispondenti tipi tupla per la fig. precedente che includono TipoPersona già visto. Si noti l uso del costrutto: multiset per denotare il costruttore di insiemi previsto nella versione di SQL-3. ref is system generated: l attributo da utilizzare per realizzare riferimenti a istanze del tipo ( OID = REF) è automaticamente generato dal sistema. 11 Codice esempio tipi strutturati create type TipoStab as ( Nome varchar (25), Citta varchar (7), Addetti integer) create type TipoCostr as( Nome varchar (25), Presidente ref(tipopersona), Stabilimenti TipoStab multiset) ref is system generated create type TipoPartiAuto as ( Motore char(10), Ammortizzatore char(5)) create type TipoAuto as TipoAuto as( Targa char(7), Modello varchar (30), Costruttore ref(tipocostr), PartiMeccaniche TipoPartiAuto) ref is system generated 12
4 Complessità strutturale TipoStab presente nell ambito di TipoCostr e TipoPartiAuto presente nell ambito di TipoAuto, sono usati senza introdurre il costrutto ref e cioè senza che vengano introdotti oggetti e quindi tipi indipendenti. Questo perché si possono costruire oggetti (tuple) che comprendono al loro interno sotto-oggetti (sotto-tuple) garantendo una arbitraria complessità strutturale. Le tabelle (classi) dell esempio Create table INDUSTRIALI of TipoPersona ( Ref is CodFisc derived) Create table PILOTI of TipoPersona ( Ref is Codfisc derived Create table AUTOMOBILI of TipoAuto ( Ref is AutoId system generated Create table COSTRUTTORI of TipoCostr ( Ref is CostrId system generated, Presidente with options scope INDUSTRIALI) Definizione di identificatori Nella definizione di TipoAuto (e TipoCostr) non compare esplicitamente il nome dell attributo da utilizzare per realizzare riferimenti a istanze del tipo. Grazie alle definizioni (ref is ) nelle Tabelle AUTOMOBILI, COSTRUTTORI vengono introdotti esplicitamente i relativi identificatori AutoId, CostrId, per utilizzarli nelle relazioni. with options Il costrutto with options consente di fornire maggiori dettagli o imporre restrizioni su componenti del tipo quando esso viene utilizzato nell ambito di una tabella. Qui viene usato per associare la clausola scope all attributo Presidente (componente del TipoCostr): Presidente with options scope INDUSTRIALI che impone il vincolo che i valori di Presidente debbano essere dei riferimenti alle tuple di TipoPersona appartenenti alla tabella INDUSTRIALI
5 Gerarchie di tipo In SQL:1999 vi sono gerarchie di tipo e di tabella Le Gerarchie di tipo estendono i tipi già definiti, come nel caso di TipoAuto dell esempio seguente: create type TipoAutoStorica under TipoAuto as( AnnoCostr integer) dove TipoAutoStorica aggiunge l attributo AnnoCostr a TipoAuto. Gerarchie sulle tabelle Le gerarchie sulle tabelle sono analoghe alle gerarchie sulle classi: Le sotto-tabelle hanno per tipo un sotto-tipo delle tabelle da cui ereditano. Ogni tupla (oggetto) presente in una sotto-tabella appare (è fisicamente presente) come tupla nelle tabelle di livello gerarchicamente superiore. Definizione di Automobile Storica: create table AUTOMOBILISTORICHE of TipoAutoStorica under AUTOMOBILI Alternativamente (ma con tipo non riutilizzabile ): create table AUTOMOBILISTORICHE under AUTOMOBILI( AnnoCostr integer) Anche la gestione dei riferimenti viene ereditata Tipi instanziabili e non I tipi definiti dall utente possono essere: [not] instantiable cioè etichettati come instanziabili o meno I tipi non instanziabili non possono essere utilizzati direttamente nella definizione delle tabelle ma possono essere utilizzati come base nelle definizione dei sottotipi o come componenti all interno della definizione di altri tipi o tabelle. Il comportamento è analogo a quello delle classi astratte di Java o del modello ad oggetti. 19 Metodi parte dinamica Un metodo è una procedura utilizzata per incapsulare lo stato di un oggetto, ed è caratterizzato da una interfaccia (o segnatura) e una implementazione l interfaccia comprende tutte le informazioni che permettono di invocare un metodo (il tipo dei parametri) l implementazione contiene il codice del metodo Il tipo di un oggetto comprende, oltre alle proprietà, anche le interfacce dei metodi applicabili a oggetti di quel tipo Ipotizziamo che i metodi siano assimilabili a funzioni, ovvero possono avere più parametri di ingresso ma un solo parametro di uscita 20
6 Metodi In prima approssimazione, i metodi possono essere dei seguenti tipi costruttori per costruire oggetti a partire da parametri di ingresso (restituendo l OID dell oggetto costruito) distruttori per cancellare gli oggetti, ed eventuali altri oggetti ad essi collegati accessori funzioni che restituiscono informazioni sul contenuto degli oggetti (proprietà derivate) trasformatori procedure che modificano lo stato degli oggetti, e di eventuali altri oggetti ad essi collegati E possibile negare agli utenti i privilegi di accesso ai metodi, che vengono definiti come privilegi speciali, ottenendo come effetto l incapsulamento dei dati. 21 Metodi Vediamo un esempio di Definizione del TipoPartiAuto che comprende i metodi PotUnitaria calcolo della potenza di ciascun cilindro del motore e MaggiorPotUnitaria (confronto tra l istanza su cui viene invocato il metodo e un altra istanza dello stesso tipo che viene passata come parametro) create type TipoPartiAuto as( Motore char(10), NumCilindri integer, Potenza integer, Cilindrata integer ) not instantiable method PotUnitaria() returns float, method DisegnoDisponibile () returns boolean language C 22 Metodi: implementazione I metodi definiti possono essere realizzati in SQL:1999 oppure in un linguaggio esterno (vedi nell esempio C per DisegnoDisponibile); Occorre definire la segnatura con i parametri di ingresso e quello di uscita e poi l implementazione: Calcolo della potenza di ciascun cilindro del motore Create instance method PotUnitaria() returns float for TipoPartiAuto return (cast(self.potenza as float)/ Self.NumCilindri) Metodi: implementazione Confronto tra l istanza di TipoPartiAuto su cui viene invocato il metodo con un altra istanza dello stesso tipo che viene passata come parametro Create instance method MaggiorPotUnitaria (ParteCfr TipoPartiAuto) returns boolean for TipoPartiAuto Return ((Self.PotUnitaria > ParteCfr.PotUnitaria) or((self.potunitaria > ParteCfr.PotUnitaria) and(self.cilindrata > ParteCfr.Cilindrata))) 23 24
7 Metodi: implementazione Nelle implementazioni i valori degli attributi sono raggiunti con una notazione a punto (dot notation) per estrarre l attributo referenziato da una variabile. E da notare che nel metodo MaggiorPotUnitaria venga utilizzato il metodo PotUnitaria. In SQL:1999 si fa riferimento a una implementazione esterna realizzata in uno specifico linguaggio con: Create instance method DisegnoDisponibile() return boolean external name Mia ProceduraC Interrogazioni in SQL:1999 Le interrogazioni SQL-2 sono completamente ammesse in SQL:1999 select Nome from PERSONE where CodFisc = TRESFN56D23S541S La navigazione lungo i riferimenti tra i tipi richiede l operatore di dereferenziamento ; tale operatore consente di accedere da un oggetto sorgente x ad un attributo A di un oggetto y referenziato in x con x -> A Interrogazioni in SQL:1999 Il seguente esempio mostra l uso dell operatore di dereferenziamento per accedere al valore dell attributo Nome dell oggetto della tabella INDUSTRIALI puntato dall oggetto della tabella COSTRUTTORI che è puntato a sua volta dall automobile che soddisfa il predicato Targa= DB123MS : select Costruttore -> Presidente -> Nome from AUTOMOBILI where Targa = DB123MS 27 Interrogazioni in SQL:1999 In SQL:1999 gli attributi di tipo REF possono essere esplicitamente utilizzati nelle interrogazioni e confrontati con l operatore = con i riferimenti a tuple dello stesso tipo: Select INDUSTRIALE.Nome From AUTOMOBILE, COSTRUTTORE, INDUSTRIALE where AUTOMOBILE.Targa= DB123MS and AUTOMOBILE.Costruttore=COSTRUTTORE.CostrId and COSTRUTTORE.Presidente=INDUSTRIALE.CodFisc L interrogazione costruisce un join tra le tabelle AUTOMOBILE, COSTRUTTORE, INDUSTRIALE, in cui: l attributo Costruttore di AUTOMOBILE viene confrontato con l identificatore CostrId di COSTRUTTORE e l attributo Presidente di COSTRUTTORE viene confrontato con l identificatore CodFisc di INDUSTRIALE. 28
8 The Third Generation Database System Manifesto (Stonebraker, Rowe, Lindsay, Gray, Carey, Brodie, Bernstein, Beech) Un articolo a sostegno dei sistemi object relational - nato in risposta al manifesto delle basi di dati ad oggetti (OODBMS)- la cui intuizione nel tempo si è dimostrata profetica: "I DBMS della prossima generazione dovranno essere ottenuti come risultato dell'evoluzione dei DBMS esistenti (relazionali)" I PRINCIPI DEL MANIFESTO I DBMS di terza generazione dovranno essere una generalizzazione (compatibile) con DBMS della seconda generazione Oltre a fornire i servizi tradizionali di gestione dei dati, dovranno permettere la definizione di oggetti complessi e regole Dovranno essere aperti ad altri sottosistemi I CONCETTI DEL MANIFESTO Un 3GDBMS deve avere un sistema di tipi ricco, che tra l altro possegga costruttori ortogonali per array, sequenze, record e set. Un 3GDBMS deve consentire gerarchie di generalizzazione tra tipi possibilmente anche con ereditarietà multipla. Le funzioni (includendo procedure e metodi) sono caratteristiche utili specie se accompagnate dall incapsulamento. Ha senso che il sistema assegni OID agli oggetti solo se non è disponibile una chiave primaria tra gli attributi definiti dall utente; altrimenti è meglio ricorrere a quelli chiave per identificare gli oggetti. Regole attive (trigger) e passive (vincoli di integrità) diventeranno una componente essenziale dei 3GDBMS. Indipendentemente da quanto questo fattore sia desiderabile, SQL è il linguaggio di riferimento dei 3GDBMS. 31
CAPITOLO V. DATABASE: Il modello relazionale
CAPITOLO V DATABASE: Il modello relazionale Il modello relazionale offre una rappresentazione matematica dei dati basata sul concetto di relazione normalizzata. I principi del modello relazionale furono
DettagliIl sistema informativo deve essere di tipo centralizzato e accessibile mediante un computer server installato nella rete locale dell albergo.
PROBLEMA. Un albergo di una grande città intende gestire in modo automatizzato sia le prenotazioni sia i soggiorni e realizzare un database. Ogni cliente viene individuato, tra l altro, con i dati anagrafici,
DettagliRDBMS: panorama attuale. RDBMS: panorama attuale
RDBMS: panorama attuale Gestiscono e manipolano dati semplici (tabellari) Hanno un linguaggio di interrogazione (SQL) semplice, dichiarativo e standard Tool consolidati per lo sviluppo di applicazioni
Dettagli2011 Politecnico di Torino 1
SQL per le applicazioni Esercitazione PHP e MySQL Svolgimento D B M G Passi di risoluzione creazione e popolamento della base di dati Creazione di un script SQL Passo 2 creazione di una query d interrogazione
DettagliIngegneria del Software
Ingegneria del Software Analisi Object Oriented ed Elementi di Programmazione OO Origini Le metodologie ad oggi nascono negli anni 70 ma si affermano solo nelgi anni 80 grazie alla nascita dei linguaggi
DettagliTipi MULTISET: accesso
Tipi MULTISET: accesso Poiche non e previsto un ordine tra gli elementi un accesso diretto come quello visto per gli array non e possibile E necessario utilizzare funzioni ad hoc Tali funzioni possono
DettagliBasi di dati SQL. Standardizzazione di SQL. Linguaggi di Interrogazione: SQL. Prof.Angela Bonifati
Basi di dati Linguaggi di Interrogazione: SQL Prof.Angela Bonifati 1 SQL Il nome stava per Structured Query Language Più che un semplice linguaggio di query: si compone di una parte DDL e di una DML DDL:
DettagliINTRODUZIONE. Data Base Management Systems evoluzione tecniche gestione dati
INTRODUZIONE Accesso ai dati tramite DBMS Livelli di astrazione Modello dei dati: schema / istanza / metadati Alcuni modelli dei dati Linguaggi per DBMS Architettura di base di un DBMS cesarini - BDSI
DettagliDATABASE PER IL WEB. Programmazione Web 1
DATABASE PER IL WEB Programmazione Web 1 Archite3ura web con database Client Tier Web/App Tier DB Tier Client Web / App Server Database Il server web comunica con un altro server che con8ene il la banca
DettagliDomini elementari, 2. Basi di dati. Domini elementari, 4. Domini elementari, 3. Domini definiti dagli utenti. Domini elementari, 5
Domini elementari, Basi di dati Linguaggi di Interrogazione: SQL Prof.Angela Bonifati Bit Valori booleani (vero/falso), singoli o in sequenza (la sequenza può essere di lunghezza variabile) Sintassi: bit
DettagliArchivi e Basi di Dati
Archivi e Basi di Dati A B C File Programma 1 Programma 2 A B C File modificati Programma 1 DBMS DB Programma 2 Informatica Generale (CdL in E&C), A.A. 2000-2001 55 Problemi nella gestione di archivi separati
DettagliGestione delle tabelle
Linguaggio SQL: fondamenti Creazione di una tabella Modifica della struttura di una tabella Cancellazione di una tabella Dizionario dei dati Integrità dei dati 2 Creazione di una tabella (1/3) Si utilizza
DettagliLaboratorio di Basi di Dati
Laboratorio di Basi di Dati Docente: Alberto Belussi Lezione 10 Architettura Model-View-Controller (MVC) L'architettura MVC può essere applicata anche alla tecnologia PHP secondo diversi approcci. In questa
DettagliLinguaggio SQL. Structured Query Language
Linguaggio SQL Structured Query Language Creato negli anni 70 presso IBM Inizialmente solo linguaggio di interrogazione Ora linguaggio di riferimento per DB relazionali Standardizzato grazie al lavoro
DettagliSQL: concetti base SQL. Definizione dei dati in SQL. SQL: "storia"
SQL SQL: concetti base originariamente "Structured Query Language", ora "nome proprio" linguaggio con varie funzionalità: contiene sia il DDL sia il DML ne esistono varie versioni vediamo gli aspetti essenziali,
DettagliLinguaggio SQL: fondamenti D B M G. Gestione delle tabelle
Linguaggio SQL: fondamenti Creazione di una tabella Modifica della struttura di una tabella Cancellazione di una tabella Dizionario dei dati Integrità dei dati 2 2007 Politecnico di Torino 1 Creazione
DettagliDDL, VINCOLI D INTEGRITÁ, AGGIORNAMENTI E VISTE. SQL è più di un semplice linguaggio di interrogazione
SQL DDL, VINCOLI D INTEGRITÁ, AGGIORNAMENTI E VISTE SQL è più di un semplice linguaggio di interrogazione! Linguaggio di definizione dati (Data-definition language, DDL):! Crea/distrugge/modifica relazioni
DettagliIl linguaggio SQL: trigger. Versione elettronica: 04.7.SQL.trigger.pdf
Il linguaggio SQL: trigger Sistemi Informativi T Versione elettronica: 04.7.SQL.trigger.pdf DBMS attivi Un DBMS si dice attivoquando dispone di un sottosistema integrato per definire e gestire regole I
DettagliStored Procedures. Massimo Mecella Dipartimento di Ingegneria informatica automatica e gestionale Antonio Ruberti Sapienza Università di Roma
Stored Procedures Massimo Mecella Dipartimento di Ingegneria informatica automatica e gestionale Antonio Ruberti Sapienza Università di Roma Progetto di Applicazioni Software Stored Procedure e User Defined
DettagliIl linguaggio SQL: DDL di base
Il linguaggio SQL: DDL di base Sistemi Informativi T Versione elettronica: 04.1.SQL.DDLbase.pdf SQL: caratteristiche generali SQL (Structured Query Language) èil linguaggio standard de facto per DBMS relazionali,
DettagliCorso Analista Programmatore Microsoft. Corso Analista Programmatore Microsoft Programma
Corso Analista Programmatore Microsoft Programma 2 OBIETTIVI E MODALITA DI FRIUZIONE E VALUTAZIONE 2.1 Obiettivo e modalità di fruizione L obiettivo del corso è di fornire tecniche e metodologie per svolgere
DettagliCorso sul linguaggio SQL
Corso sul linguaggio SQL Modulo L2B (SQL) 2.1 Comandi sui database 1 Prerequisiti Introduzione ai DB Linguaggi per database Tipi fondamentali di dati 2 1 Introduzione In questa Unità introduciamo il linguaggio
DettagliIntroduzione ai Sistemi di Gestione di Basi di Dati XML
Introduzione ai Sistemi di Gestione di Basi di Dati Introduzione ai Sistemi di Gestione di Basi di Dati Obiettivi Memorizzare ed estrarre documenti da RDBMS. Trasformare dati tabellari in dati e viceversa.
DettagliOrganizzazione degli archivi
COSA E UN DATA-BASE (DB)? è l insieme di dati relativo ad un sistema informativo COSA CARATTERIZZA UN DB? la struttura dei dati le relazioni fra i dati I REQUISITI DI UN DB SONO: la ridondanza minima i
DettagliLaboratorio di Basi di Dati e Web
Laboratorio di Basi di Dati e Web Docente: Alberto Belussi Lezione 1 SQL Structured Query Language SQL è stato definito nel 1973 ed è oggi il linguaggio più diffuso per i DBMS relazionali Il linguaggio
DettagliProff. Fabio Ciao e Raffaele Bortone
ISTITUTO D ISTRUZIONE SUPERIORE FERRARIS BRUNELLESCHI - EMPOLI Materia: INFORMATICA PROGRAMMAZIONE ANNUALE A.S. 2014/2015 Classe IV C Informatica Proff. Fabio Ciao e Raffaele Bortone Libro di testo: Cloud
DettagliData Base. Master "Bio Info" Reti e Basi di Dati Lezione 6
Data Base 1 Sommario I concetti fondamentali. Database Relazionale.. Query e SQL MySql, Creazione di un db in MySQL con PHPmyAdmin Creazione database e delle Tabelle Query Inserimento Ricerca Modifica
DettagliBASI DI DATI. basi di dati - introduzione ai sistemi informativi 1
BASI DI DATI basi di dati - introduzione ai sistemi informativi 1 Sistema Informativo Insieme degli strumenti, risorse e procedure che consentono la gestione delle informazioni aziendali e' essenziale
DettagliCap. 1-I 1 I sistemi informatici
Libro di testo A. Chianese,V. Moscato, A. Picariello, L. Sansone Basi di dati per la gestione dell informazione McGraw-Hill Hill,, 2007 Ricevimento studenti Lunedì ore 11-13 Didattica su web Si interagisce
DettagliIl Modello Relazionale
Il Modello Relazionale Basi di dati 1 Il Modello Relazionale Angelo Montanari Dipartimento di Matematica e Informatica Università di Udine Il Modello Relazionale Basi di dati 2 Introduzione Il modello
DettagliEsempio di database relazionale con l utilizzo del prodotto MySQL
Esempio di database relazionale con l utilizzo del prodotto MySQL Marco Liverani Aprile 2015 In queste pagine viene riportato in sintesi il progetto di un database relazionale esemplificativo con cui viene
DettagliBasi di dati. Il Linguaggio SQL. K. Donno - Il Linguaggio SQL
Basi di dati Il Linguaggio SQL Data Definition Language (DDL) Data Definition Language: insieme di istruzioni utilizzate per modificare la struttura della base di dati Ne fanno parte le istruzioni di inserimento,
DettagliBasi di dati. Il Modello Relazionale dei Dati. K. Donno - Il Modello Relazionale dei Dati
Basi di dati Il Modello Relazionale dei Dati Proposto da E. Codd nel 1970 per favorire l indipendenza dei dati Disponibile come modello logico in DBMS reali nel 1981 (non è facile realizzare l indipendenza
DettagliLaboratorio di Basi di Dati
Laboratorio di Basi di Dati Docente: Alberto Belussi Lezione 1 SQL SQL (Structured Query Language) è stato definito nel 1973 ed è oggi il linguaggio più diffuso per i DBMS relazionali. Sono stati proposti
DettagliSQL PER LA DEFINIZIONE DI BASI DI DATI
SQL PER LA DEFINIZIONE DI BASI DI DATI SQL non è solo un linguaggio di interrogazione (Query Language), ma Un linguaggio per la definizione di basi di dati (Data-definition language (DDL)) CREATE SCHEMA
DettagliSQL non è solo un linguaggio di interrogazione (Query Language), ma. Un linguaggio per la definizione di basi di dati (Data-definition language (DDL))
SQL PER LA DEFINIZIONE DI BASI DI DATI 1 SQL non è solo un linguaggio di interrogazione (Query Language), ma Un linguaggio per la definizione di basi di dati (Data-definition language (DDL)) CREATE SCHEMA
DettagliIl modello multidimensionale. Per le slides si ringrazia il Prof. Stefano Rizzi (http://www-db.deis.unibo.it/~srizzi/) e il Dott.
Il modello multidimensionale Per le slides si ringrazia il Prof. Stefano Rizzi (http://www-db.deis.unibo.it/~srizzi/) e il Dott. Angelo Sironi Verso il modello multidimensionale Che incassi sono stati
DettagliCosa è importante: pom.xml Goal Plug-in Repository
Cos è Maven? Maven è un software usato principalmente per la gestione di progetti Java e build automation, ma è utile anche per gestire documentazione, report, dipendenze... Cosa è importante: pom.xml
DettagliSQL. Alcune note sulla definizione dei dati
SQL Alcune note sulla definizione dei dati Domini Domini elementari (predefiniti) Domini definiti dall'utente (riutilizzabili, possono servire per specificare vincoli di dominio propri di una certa applicazione)
DettagliAspetti relazionali ad oggetti di Oracle 9i. Il sistema di tipi di Oracle. Tipi oggetto
Aspetti relazionali ad oggetti di Oracle 9i 158 Il sistema di tipi di Oracle Non distinct type Tipi oggetto Tipi riferimento Tipi collezione Ereditarietà 159 Tipi oggetto Possibilità di definire tipi oggetto
DettagliSQL prima parte D O C E N T E P R O F. A L B E R T O B E L U S S I. Anno accademico 2011/12
SQL prima parte D O C E N T E P R O F. A L B E R T O B E L U S S I Anno accademico 2011/12 DEFINIZIONE Il concetto di vista 2 È una relazione derivata. Si specifica l espressione che genera il suo contenuto.
DettagliSQL SQL. Definizione dei dati. Domini. Esistono 6 domini elementari:
SQL SQL (pronunciato anche come l inglese sequel: acronimo di Structured Query Language (linguaggio di interrogazione strutturato Linguaggio completo che presenta anche proprietà di: DDL (Data Definition
DettagliDATABASE RELAZIONALI
1 di 54 UNIVERSITA DEGLI STUDI DI NAPOLI FEDERICO II DIPARTIMENTO DI DISCIPLINE STORICHE ETTORE LEPORE DATABASE RELAZIONALI Dott. Simone Sammartino Istituto per l Ambiente l Marino Costiero I.A.M.C. C.N.R.
DettagliDB - Modello relazionale dei dati. DB - Modello Relazionale 1
DB - Modello relazionale dei dati DB - Modello Relazionale 1 Definizione Un modello dei dati è un insieme di meccanismi di astrazione per definire una base di dati, con associato un insieme predefinito
DettagliBasi di dati e Sistemi informativi aziendali
Sistemi informativi Linguaggio SQL: fondamenti Istruzione SELECT: fondamenti Interrogazioni nidificate Operatori insiemistici Istruzioni di aggiornamento Gestione delle tabelle 2 2007 Politecnico di Torino
DettagliIntroduzione al linguaggio SQL
Introduzione al linguaggio SQL Structured Query Language (Linguaggio Strutturato di Interrogazione di Database) prof. Cleto Azzani IPSIA MORETTO BRESCIA (2004) Che cos è un Data Base (Base di dati) Insieme
DettagliAnalista Programmatore su Tecnologie Microsoft
Analista Programmatore su Tecnologie Programma 1 INTRODUZIONE 1.1 Scopo del documento Il presente documento contiene il programma di massima del corso online di Analista. 1.2 Acronimi N.D. 1.3 Glossario
DettagliBasi di Dati prof. Letizia Tanca lucidi ispirati al libro Atzeni-Ceri-Paraboschi-Torlone. SQL: il DDL
Basi di Dati prof. Letizia Tanca lucidi ispirati al libro Atzeni-Ceri-Paraboschi-Torlone SQL: il DDL Parti del linguaggio SQL Definizione di basi di dati (Data Definition Language DDL) Linguaggio per modificare
DettagliDBMS (Data Base Management System)
Cos'è un Database I database o banche dati o base dati sono collezioni di dati, tra loro correlati, utilizzati per rappresentare una porzione del mondo reale. Sono strutturati in modo tale da consentire
DettagliUser Tools: DataBase Manager
Spazio di lavoro Per usare T-SQL Assistant selezionare il link Simple Query e spostare a piacere la piccola finestra dove un menu a tendina mostra i diversi comandi SQL selezionabili, il pulsante Preview
DettagliCorso di Informatica (Basi di Dati)
Corso di Informatica (Basi di Dati) Lezione 6 (15 gennaio 2009) Linguaggio SQL: Data Definition Language (DDL) Da: Atzeni, Ceri, Paraboschi, Torlone - Basi di Dati Lucidi del Corso di Basi di Dati 1, Prof.
DettagliBasi di Dati: Corso di laboratorio
Basi di Dati: Corso di laboratorio Lezione 2 Raffaella Gentilini 1 / 45 Sommario 1 Il DDL di SQL: Cancellazione ed Aggiornamento di una BD Cancellazione di Schemi, Tabelle, e Domini Aggiornamento di Tabelle
DettagliProgrammazione Orientata agli Oggetti in Linguaggio Java
Programmazione Orientata agli Oggetti in Linguaggio Java Classi e Oggetti: Metafora Parte a versione 2.2 Questo lavoro è concesso in uso secondo i termini di una licenza Creative Commons (vedi ultima pagina)
DettagliLezione V. Aula Multimediale - sabato 29/03/2008
Lezione V Aula Multimediale - sabato 29/03/2008 LAB utilizzo di MS Access Definire gli archivi utilizzando le regole di derivazione e descrivere le caratteristiche di ciascun archivio ASSOCIAZIONE (1:1)
DettagliPROGRAMMA DI CLASSE 5AI
Istituto di Istruzione Superiore Euganeo Istituto tecnico del settore tecnologico Istituto professionale del settore servizi socio-sanitari Istituto professionale del settore industria e artigianato PROGRAMMA
DettagliBasi di dati Il linguaggio SQL
Basi di dati Il linguaggio SQL teoria e pratica con Microsoft Access Riepilogando Nelle basi di dati esiste 1. una parte invariante nel tempo, lo schema, costituita dalle caratteristiche dei dati (nomi
DettagliBasi di dati Il linguaggio SQL
Riepilogando Basi di dati Il linguaggio SQL Nelle basi di dati esiste 1. una parte invariante nel tempo, lo schema, costituita dalle caratteristiche dei dati (nomi degli attributi, domini, 2. una parte
DettagliVincoli di Integrità Approccio dichiarativo alla loro implementazione
Vincoli di Integrità Approccio dichiarativo alla loro implementazione Antonella Poggi Dipartimento di informatica e Sistemistica SAPIENZA Università di Roma Progetto di Applicazioni Software Anno accademico
DettagliJava Native Interface Appunti
Java Native Interface Appunti Riccardo Rizzo 1/8 Introduzione L'uso delle Java Native Interface e' giustificato tutte quelle volte che una applicazione non puo' essere scritta interamente in Java. Per
DettagliPROGRAMMA CORSO Analista Programmatore JAVA - ORACLE
PROGRAMMA CORSO Analista Programmatore JAVA - ORACLE 1. JAVA 1.1 Introduzione a Java Introduzione Cosa è Java 1.2 Sintassi e programmazione strutturata variabili e metodi tipi di dati, array operatori
DettagliCorso di Informatica Generale 1 IN1. Linguaggio SQL
Università Roma Tre Facoltà di Scienze M.F.N. di Laurea in Matematica di Informatica Generale 1 Linguaggio SQL Marco (liverani@mat.uniroma3.it) Sommario Prima parte: le basi dati relazionali Basi di dati:
DettagliTraduzione dello schema E-R in modello logico relazionale
Traduzione dello schema E-R in modello logico relazionale 1 2 Entità con identificatore esterno - Esempio Risoluzione delle entità con identificatore esterno 3 4 5 Traduzioni dal modello E-R al modello
DettagliOggetti Lezione 3. aspetti generali e definizione di classi I
Programmazione a Oggetti Lezione 3 Il linguaggio Java: aspetti generali e definizione di classi I Sommario Storia e Motivazioni Definizione di Classi Campi e Metodi Istanziazione di oggetti Introduzione
DettagliElena Baralis 2013 Politecnico di Torino 1
Modello relazionale Docente M2170 Fondamenti di informatica Verdi M4880 Sistemi di elaborazione Bianchi F0410 Basi di dati Neri Docenti Nome Dipartimento Telefono Verdi Informatica 123456 Bianchi Elettronica
DettagliEsame di Stato Istituto Tecnico Industriale Soluzione della Seconda Prova Indirizzo: INFORMATICA Tema: INFORMATICA Anno Scolastico: 2002-2003
Esame di Stato Istituto Tecnico Industriale Soluzione della Seconda Prova Indirizzo: INFORMATICA Tema: INFORMATICA Anno Scolastico: 2002-2003 Il primo punto richiede l analisi e lo sviluppo del progetto
DettagliLICEO SCIENTIFICO "LEONARDO DA VINCI" - RC PROGRAMMA DI INFORMATICA A.S. 2014/15 - CLASSE: I Q - Indirizzo Scienze applicate Prof Miritello Rita
LICEO SCIENTIFICO "LEONARDO DA VINCI" - RC PROGRAMMA DI INFORMATICA A.S. 2014/15 - CLASSE: I Q - Indirizzo Scienze applicate Modulo 1: Introduzione all informatica Fondamenti di teoria della elaborazione
DettagliBasi di Dati e Sistemi Informativi. Structured Query Language
Basi di Dati e Sistemi Informativi Structured Query Language Corso di Laurea in Ing. Informatica Ing. Gestionale Magistrale SQL come DDL e DML SQL non è solo un linguaggio di interrogazione Linguaggio
DettagliLezione 8. Metadati, Viste e Trigger
Lezione 8 Metadati, Viste e Trigger Pag.1 Metadati e catalogo di sistema I metadati sono dati a proposito dei dati (quali tabelle esistono?, quali campi contengono?, quante tuple contengono?, ci sono vincoli
DettagliProgetto B. Utenti. Di conseguenza si potranno avere solo utenti di questi tipi
Progetto B Progettare un applicazione web basata su Servlet e JSP che permetta la collaborazione di diversi utenti nel creare, aggiornare e gestire un archivio di pagine personali degli autori di un giornale.
DettagliSQL IL LINGUAGGIO DI INTERROGAZIONE
SQL IL LINGUAGGIO DI INTERROGAZIONE SQL! Originato da SEQUEL-XRM e System-R (1974-1977) dell IBM! Significato originario Structured Query Language! Standard de facto! Attuale standard ANSI/ISO è SQL:1999
DettagliVolumi di riferimento
Simulazione seconda prova Esame di Stato Gestione di un centro agroalimentare all ingrosso Parte prima) Un nuovo centro agroalimentare all'ingrosso intende realizzare una base di dati per l'attività di
DettagliNomi e Ambiente. Nicola Fanizzi. Linguaggi di Programmazione [010194] 20 apr, 2016. Dipartimento di Informatica Università degli Studi di Bari
Nomi e Ambiente Nicola Fanizzi Dipartimento di Informatica Università degli Studi di Bari Linguaggi di Programmazione [010194] 20 apr, 2016 Sommario 1 Nomi Definizione Astrazione Elementare Progettazione
DettagliDefinizione di domini
Definizione di domini Come nei linguaggi ad alto livello (es. C) è possibile definire nuovi domini (tipi di dati) a partire da quelli predefiniti, anche se il costruttore è più limitato. create domain
DettagliDati relazionali e XML
Dati relazionali e Introduzione (1) Memorizzazione dei dati Utilizzo dei dati Applicazione DBMS relazionale Applicazione Applicazione 2 Introduzione (2) Memorizzazione dei dati Utilizzo dei dati Applicazione
DettagliCorso Online Analista Programmatore Microsoft
Corso Online Analista Programmatore Microsoft We Train Italy info@wetrainitaly.it Programma Generale del Corso Analista Programmatore Microsoft Tematiche di Base Modulo Uno Le basi della programmazione
DettagliIl modello relazionale
Il modello relazionale Sistemi Informativi L-A Home Page del corso: http://www-db.deis.unibo.it/courses/sil-a/ Versione elettronica: Relazionale.pdf Sistemi Informativi L-A Relazionale, Gerarchico e Reticolare
DettagliBasi di Dati prof. Letizia Tanca
Basi di Dati prof. Letizia Tanca (lucidi tratti dal libro Atzeni-Ceri-Paraboschi-Torlone) AA 2003-04 Linguaggi di interrogazione commerciali per il Modello Relazionale dei Dati: SQL - il DDL Domini I domini
DettagliProva Scritta di Modelli dei Dati di Nuova Generazione
Prova Scritta di Modelli dei Dati di Nuova Generazione 4 Giugno 2008 NOME: COGNOME: Si prega di risolvere gli esercizi direttamente sui fogli del testo, utilizzando protocolli solo nel caso di mancanza
DettagliDatabase: collezione di fatti, registrabili e con un ben preciso significato, relazionati fra di loro
Database relazionali: un'introduzione Database: collezione di fatti, registrabili e con un ben preciso significato, relazionati fra di loro Rappresentazione astratta di aspetti del mondo reale (Universe
DettagliSi formulino le seguenti interrogazioni tramite il linguaggio SQL:
Informatica per le Scienze Umane - Corso di Laurea in Lettere Appello del 15.01.2009 - Docente: Massimo Coppola Modello Relazionale e SQL Si consideri la seguente base di dati relativa alla redazione di
DettagliSISTEMI INFORMATIVI AZIENDALI. introduzione ai sistemi informativi 1
SISTEMI INFORMATIVI AZIENDALI introduzione ai sistemi informativi 1 Sistema Informativo Insieme degli strumenti, risorse e procedure che consentono la gestione delle informazioni aziendali e' essenziale
DettagliTool. Basi di Dati e Sistemi Informativi Prof. Marco Di Felice Dott.sa Sara Zuppiroli A.A. 2012-2013
Tool Basi di Dati e Sistemi Informativi Prof. Marco Di Felice Dott.sa Sara Zuppiroli A.A. 2012-2013 Basi di Dati e Sistemi Informativi () PostgreSQL A.A. 2012-2013 1 / 26 Gli strumenti che vedremo Basi
DettagliGestione delle eccezioni in Java
Gestione delle eccezioni in Java Fondamenti di Informatica Ingegneria Gestionale Canale AL 1 Le eccezioni in Java Exception handling: insieme di costrutti e regole sintattiche e semantiche presenti nel
DettagliIntroduzione ai database relazionali
Introduzione ai database relazionali Tabelle Un database (DB) è costituito da un insieme di file che memorizzano dati opportunamente organizzati Nei database relazionale tale organizzazione è costituita
DettagliModello Relazionale dei DBMS - Vincoli Tradizionalmente, esistono quattro modelli logici: Gerarchico Reticolare Relazionale A oggetti XML I modelli
Modello Relazionale dei DBMS - Vincoli Tradizionalmente, esistono quattro modelli logici: Gerarchico Reticolare Relazionale A oggetti XML I modelli gerarchico e reticolare sono più vicini alle strutture
DettagliLorenzo Braidi. Database design. Libro_datadesign.indb 1 23-11-2004 10:06:17
Lorenzo Braidi Database design Libro_datadesign.indb 1 23-11-2004 10:06:17 Sommario Introduzione...XI Capitolo 1 Le basi di dati relazionali... 1 Le basi di dati... 1 Un po di storia... 2 I database gerarchici...
DettagliCorso Analista Programmatore Web PHP Corso Online Analista Programmatore Web PHP
Corso Analista Programmatore Web PHP Corso Online Analista Programmatore Web PHP Accademia Futuro info@accademiafuturo.it Programma Generale del Corso Analista Programmatore Web PHP Tematiche Trattate
DettagliUN PROGRAMMA APPLICATIVO: ACCESS Access è un programma del pacchetto Office che permette di realizzare database
UN PROGRAMMA APPLICATIVO: ACCESS Access è un programma del pacchetto Office che permette di realizzare database Per comprendere al meglio cosa sia un database, dobbiamo prima introdurre il concetto di
Dettagli1. Schema concettuale della base di dati Lo schema concettuale (o statico) è uno dei due schemi del progetto concettuale di un sistema informativo.
Esame di Stato Istituto Tecnico Industriale Proposta di soluzione della seconda prova Indirizzo: INFORMATICA Tema: INFORMATICA Anno Scolastico: 2003-2004 1. Schema concettuale della base di dati Lo schema
DettagliL ARCHIVIAZIONE E LA GESTIONE DATI ATTRAVERSO L INTERAZIONE TRA MICROSOFT ACCESS ED EXCEL 1 INTRODUZIONE
Roccatello Ing. Eduard L ARCHIVIAZIONE E LA GESTIONE DATI ATTRAVERSO L INTERAZIONE TRA MICROSOFT ACCESS ED EXCEL 1 INTRODUZIONE Agenda Presentazione docente Definizione calendario Questionario pre corso
DettagliMODELLO RELAZIONALE. cesarini-bdsi mod relazionale 1 MODELLO RELAZIONALE
MODELLO RELAZIONALE Definizione di relazione Schema e istanza Chiave Valori nulli Predicati e vincoli di integrità Vincolo di integrità referenziale cesarini-bdsi mod relazionale 1 MODELLO RELAZIONALE
DettagliUso degli oggetti. Un programma Java. è un insieme di oggetti, ognuno istanza di una classe, che si inviano messaggi
Uso degli oggetti Uso di oggetti predefiniti attraverso l'invio di messaggi. Il concetto di metodo; argomenti e restituzione di valori; segnatura e prototipo di un metodo. Il concetto di overloading. Le
DettagliAzioni. Select e join non consentono di modificare il contenuto del DB. Inserzione di nuovi dati. Azioni desiderate. Aggiornamento di dati
Azioni Select e join non consentono di modificare il contenuto del DB Azioni desiderate Inserzione di nuovi dati Aggiornamento di dati Cancellazione di dati Aggiunta di un record insert into utenti(nome,tel,codice_u)
Dettagli----------------------------------------------------------------------------
APPUNTI DI SQL Gli appunti qui forniti vogliono essere un riferimento scritto di alcuni degli argomenti trattati a lezione per gli studenti a cui vengono messi a disposizione. Non viene fornita alcuna
DettagliPROGRAMMAZIONE MODULARE. Periodo mensile. Ore previste
PROGRAMMAZIONE MODULARE Indirizzo: INFORMATICA SIRIO Disciplina: INFORMATICA Classe: QUINTA Ore previste: 16 di cui 66 ore di teoria e 99 ore di laboratorio. N. modulo Titolo Modulo Titolo unità didattiche
DettagliVincoli e Triggers. Vincoli. Tipo di vincoli. Chiavi esterne
Vincoli Chiavi esterne Vincoli locali e globali Triggers Leggere capitolo 7 di Garcia- Molina et al. Vincoli e Triggers Un vincolo e una relazione tra dati che il DBMS deve assicurare. Esempio: vincoli
DettagliQuery. Query (Interrogazioni) SQL SQL. Significato dell interrogazione. Sintassi
Query (Interrogazioni) Ultima modifica: 5/4/2012 SQL Materiale aggiuntivo per il corso di laurea in Lingue e Culture per il Turismo classe L-15! È necessario un modo per interrogare le basi di dati, cioè
DettagliCorso di Laboratorio di Basi di Dati
Corso di Laboratorio di Basi di Dati F1I072 - INF/01 a.a 2009/2010 Pierluigi Pierini Technolabs S.p.a. Pierluigi.Pierini@technolabs.it Università degli Studi di L Aquila Dipartimento di Informatica Technolabs
DettagliLinguaggio SQL: fondamenti. Basi di dati. Elena Baralis Pag. 1. Linguaggio SQL: fondamenti. Sistemi informativi. Introduzione
Sistemi informativi Istruzione : fondamenti Interrogazioni nidificate Operatori insiemistici Istruzioni di aggiornamento Gestione delle tabelle 2 al linguaggio SQL Istruzioni del linguaggio Notazione 4
DettagliXML e Sistemi per la Gestione di Basi di Dati Relazionali
Basi di Dati Distribuite a.a. 2004/2005 XML e Sistemi per la Gestione di Basi di Dati Relazionali Luca Noce - luxnox2000@yahoo.it Elisa Marino - marino_elisa@hotmail.com Obiettivi Necessità di conciliare
Dettagli