JAVA JDBC. Andrea BEI

Dimensione: px
Iniziare la visualizzazioe della pagina:

Download "JAVA JDBC. Andrea BEI (andrea.bei@libero.it)"

Transcript

1 JAVA JDBC Andrea BEI

2 JDBC: API JDBC (Java DataBase Connectivity) è una API per l accesso a DataBase relazionali sviluppata da SUN. Permette ad applicazioni JAVA di eseguire istruzioni SQL su database relazionali e gestire i risultati restituiti. JDBC definisce delle classi per rappresentare: connessioni a database istruzioni SQL result sets (insieme dei record restituiti da una Query SQL) database metadata, ecc. è organizzata in diversi strati : il programma applicativo vede solo lo strato superiore, che è indipendente dal database che interroga, il compito di interfacciarsi effettivamente con il database è delegato ad una serie di driver sottostanti, che possono essere scritti in codice Java o nativo.

3 JDBC: Architetture di accesso a DB Architettura a 2 livelli paradigma Client/Server Architettura a 3 livelli

4 ODBC: API ODBC (Open DataBase Connectivity) è una API per l accesso a DataBase relazionali sviluppata da Microsoft Nelle piattaforme Microsoft (Win 95/98/NT) è presente il Data Source Aministrator che permette di dichiarare al sistema operativo le fonti dati ODBC usate Una fonte dati ODBC è caratterizzata da: un nome: il DSN (Data Source Name) un Driver per la comunicazione con il DBMS (Oracle, SQL Server, Access) il riferimento ad un database Le applicazioni instaurano una connessione con il database riferendosi al nome della fonte dati relativa.

5 JDBC-ODBC Bridge Driver: JDBC: Tipi di Driver implementa un ponte tra la tecnologie JDBC e ODBC; fornisce l accesso a DBMS tramite i driver ODBC. i driver ODBC devono essere presenti sulla macchina da cui si accede al database. Per questo motivo il suo campo di applicazione è limitato a reti Intranet e ad architetture a 3 livelli. API Native: convertono chiamate JDBC in chiamate alle API proprietarie dei vari DBMS (Oracle, Sybase, Informix, DB2) Driver 100% JAVA Basati su un protocollo indipendente dal DBMS (JDBC-Net): traducono le chiamate JDBC in un protocollo indipendente dal DBMS. Tale protocollo viene poi ritradotto da un server nel protocollo specifico del DBMS. Il server permette di connettere una applicazione sviluppata interamente in JAVA ai vari DBMS. Basati sul protocollo del DBMS: traducono le chiamate JDBC nel protocollo usato dal DBMS. Questo permette una chiamata diretta dal client al server DBMS.E una soluzione adottabile nell accesso Intranet

6 JDBC: Tipi di Driver

7 JDBC: classi, interfacce e metodi principali Classe Java.sql.DriverManager: fornisce le funzionalità base di un gestore di driver. I metodi sono: Connection getconnection(url,user,password): crea una connessione con un DB void setlogintimeout(int): imposta il timeout di connessione int getlogintimeout(): accede al timeout di connessione setlogstream( PrintStream ): imposta lo Stream di log PrintStream getlogstream(): accede allo Stream di Log void println(string): scrive un messaggio sul Log Interfaccia Java.sql.Connection: rappresenta una connessione con uno specifico database. I metodi sono: void close(): chiude la connessione Statement createstatement(): crea e restituisce un oggetto di tipo Statement DatabaseMetaData getmetadata(): restituisce informazioni sulla struttura del database setautocommit(boolean): indica se presente o no l autocommit (default=true) commit(): rende effettive le istruzioni SQL eseguite dall ultimo commit rollback(): annulla le istruzioni SQL eseguite dall ultimo commit

8 JDBC: metodi principali Classe Java.sql.Statement: un oggetto di tipo Statement è usato per eseguire delle istruzioni SQL. I metodi sono: ResultSet executequery( String ): esegue una Query SQL. Restituisce un oggetto di tipo ResultSet che rappresenta il risultato della Query int executeupdate( String ): esegue una istruzione SQL che modifica la struttura o i dati del database( CREATE, INSERT, ecc..). int è il numero di righe modificate boolean execute( String ): esegue un comando SQL di interrogazione o modifica ResultSet getresultset(): restituisce il risultato dell ultima istruzione SQL eseguita con execute (null se l istruzione era una istruzione di modifica) int getupdatecount(): restituisce il numero di righe coinvolte nell ultima istruzione SQL eseguita con execute. void setquerytimeout(int) e int getquerytimeout(): accesso al timeout per query Classe Java.sql.ResultSet: un oggetto di tipo ResultSet rappresenta il risultato di una Query. I metodi sono: getxxx( Nome Campo ) con XXX=Float,String,Byte,Short;Long.. Restituisce del record corrente il valore del campo passato come argomento next() : Aggiorna il puntatore al record corrente facendolo avanzare di un record in JDBC2.0 ci sono anche: absolute(int), relative(int) e previous()

9 JDBC: Connessione con un DBMS JDBC-ODBC Driver / API Native Per effettuare una connessione con un DBMS occorre: Effettuare un import delle classi java.sql.* Caricare il: JDBC-ODBC Bridge driver con l istruzione: Class.forName("sun.jdbc.odbc.JdbcOdbcDriver"); oppure il Driver specifico del DBMS. Per Oracle Lite JDBC Driver l istruzione è: Class.forName( oracle.pol.poljdbc.poljdbcdriver"); (Class.forName individua carica ed esegue il link della classe compilata passata come parametro) Instaurare la connessione con il DBMS con l istruzione: Connection con = DriverManager.getConnection(url, "Login", "Password"); url è di tipo String ed ha la forma jdbc:<subprotocol>:<subname> dove: <subprotocol>: è il sottoprotocollo (es: odbc) <subname>: serve ad identificare la sorgente dei dati. Se questa è su Internet la sintassi è: //hostname:port/subsubname

10 JDBC: Connessione con un DBMS esempi Es: connessione con il database Access 97 libreria.mdb associato ad una fonte dati ODBC chiamata libreria con login= libreria e password= libreria : Class.forName( sun.jdbc.odbc.jdbcodbcdriver ); String url= jdbc:odbc:libreria ; Connection con =DriverManager.getConnection(url, libreria, libreria ); Es: connessione alla fonte dati fred sulla macchina wombat e sul numero di porta 356 sfruttando il sottoprotocollo dbnet Class.forName( <driver del protocollo dbnet> ); String url= jdbc:dbnet://wombat:356/fred ; Connection con =DriverManager.getConnection(url,, ); Es: connessione alla fonte dati ORACLE di nome POLITE(definita in odbc.ini) tramite il sottoprotocollo polite. (ORACLE Lite JDBC Driver). Class.forName( oracle.pol.poljdbc.poljdbcdriver"); String url= jdbc:polite:polite ; Connection con =DriverManager.getConnection(url, system, passwd );

11 JDBC: Interrogazioni SQL Stabilita una connessione è possibile eseguire delle interrogazioni SQL. Per inviare al DBMS delle query occorre creare un oggetto di tipo Statement. Se la connessione è descritta dall oggetto con l istruzione è: Statement stmt = con.createstatement(); i metodi principali dell oggetto Statement sono: int executeupdate( <istruzione SQL> ) è usato per istruzioni di tipo CREATE, DROP, DELETE, INSERT, UPDATE es: stmt.executeupdate( create table Anagrafica + ( Nome varchar(32), + Cognome varchar(32)) ); ResultSet executequery( <istruzione SQL> ) è usato per query di tipo SELECT es: stmt.executequery( select * from Libro + where Titolo like \ Moby Dick%\ );

12 JDBC: Accesso al Risultato delle query I due metodi executeupdate ed executequery restituiscono un oggetto di tipo RecordSet Un RecordSet è l insieme di record che costituiscono il risultato di una query. Su quest insieme viene mantenuto un puntatore alla posizione corrente. Il puntatore viene posto sul primo record alla prima invocazione del metodo next. es: String query = "SELECT Titolo, ISBN FROM Libro ; ResultSet rs = stmt.executequery(query); while (rs.next()) { String s = rs.getstring( Titolo"); String c = rs.getstring( ISBN"); System.out.println(s + " " + c); }

13 JDBC: esempio import java.sql.*; class provajdbc { public static void main(string arg[]) throws Exception { Class.forName( sun.jdbc.odbc.jdbcodbcdriver ); String url= jdbc:odbc:libreria ; Connection con=drivermanager.getconnection(url, libreria, libreria ); Statement stmt = con.createstatement(); stmt.executeupdate( create table Anagrafica + ( Nome varchar(32), + Cognome varchar(32)) ); stmt.executeupdate( insert into Anagrafica values ( Giacomo, Leopardi ) ); ResultSet rs=stmt.executequery( select Nome,Cognome from Anagrafica ); while (rs.next()) { System.out.println(rs.getString( Nome )+ +rs.getstring( Cognome )); } }}

14 Esempio: sito WEB di una catena di librerie architettura a 3 livelli Ogni libreria ha l accesso ad Internet Il Provider del servizio fornisce un WEB Server che pubblica su Internet dati relativi ai libri venduti (Autore, Titolo, Prezzo, Disponibilità nei vari punti vendita, ecc.) I dati sui libri e sulla loro disponibilità vengono inseriti da un operatore di ogni libreria in base ai libri acquistati e venduti Cliente libreria 1 DBMS Web Server Internet libreria 2 libreria N

15 Esempio: sito WEB di una catena di librerie Use Case Diagram specializza Ric.per Genere Aggiornamento Disponibilità Ricerca Ric.per Autore specializza Ric.per Titolo Inserimento Operatore Cliente usa Informaz.Libro Scheda Libro specializza usa usa Ins.Autore Ins. Libro disponibilità Informaz.Autore

16 Esempio: sito WEB di una catena di librerie copie libreria Schema ER Prezzo Titolo Editore Anno COPIE (1,1) (1,n) LIBRO (1,1) (1,n) GENERE (1,1) ISBN Cod_genere Genere (1,n) AUTORE Cod_autore Cognome Nome Anno di nascita Luogo di nascita

17 Esempio: sito WEB di una catena di librerie Packages Diagram Decomposizione funzionale del sistema nei sottosistemi: di interfaccia con il DB di comunicazione Client/Server Comunicazione Client/Server Interfaccia con DB

18 Esempio: sito WEB di una catena di librerie Class Diagram di interfaccia con DB ResultS et Statement Libro Libreria Autore Libreria() Ricerca_X_Genere() Ric erca_x_autore() Ric erca_x_titolo() Inserim entoautore() InserimentoLibro() AggiornaCopie() SchedaLibro() Connection DriverM anager

19 Esempio: sito WEB di una catena di librerie I metodi principali della classe Libreria - public Libreria(FonteDatiODBC, UserODBC, PasswordODBC): costruttore - public ResultSet Ricerca_X_Genere(String Genere): restituisce un ResultSet con tutti i libri del genere passato come parametro. I record hanno i campi: ISBN,Titolo - public ResultSet Ricerca_X_Autore(String Nome_Cognome): restituisce un ResultSet con tutti i libri dell autore passato come parametro. I record hanno i campi: ISBN,Titolo - public ResultSet Ricerca_X_Titolo(String Titolo): restituisce un ResultSet con tutti i libri il cui titolo contiene la stringa passata come parametro. - public void InserimentoLibro(Libro L): esegue l insert nel database dei dati dell oggetto Libro - public int InserimentoAutore(Autore A): esegue l insert nel database dei dati dell oggetto Autore. Ritorna il codice_autore, un numero che identifica univocamente l autore. - public void AggiornaCopie(String ISBN,int lib,int copie): Aggiorna le copie del libro ISBN della libreria lib. Copie può essere positivo o negativo - public ResultSet Scheda_Libro(String ISBN): restituisce tutte le informazioni legate al libro passato come parametro. I record hanno i campi (gli ultimi 4 sono riferiti all autore) ISBN,Titolo, Editore, Genere,Anno, Prezzo, Nome,Cognome, Anno di nascita,luogo di nascita -public ResultSet DistribuzioneCopie(String ISBN): restituisce un RecordSet contenente la disponibilità del libro nelle varie librerie. I campi dei record sono: Libreria, Copie

20 Esempio: sito WEB di una catena di librerie Sequence Diagram: creazione obj Libreria un oggetto c he crea Libreria Libreria DriverManager Connection new getconnection return Connection createstatem ent return Statement

21 Esempio: sito WEB di una catena di librerie Sequence Diagram: Ricerca per Genere Un oggetto che usa Libreria Libreria Statement Ricerca_X_Genere executequery re t u rn R es u lts et return Res ults et

22 Esempio: sito WEB di una catena di librerie Sequence Diagram: Inserimento Libro Un oggetto che usa Libreria Libro Libreria Statement new InserimentoLibro(Libro) executeupdate return ret urn

23 Implementazione:il DB Access libreria.mdb AUTORE Cod_autore Cognome Nome Anno di nascita Luogo di nascita 0 Melville Herman 1819 New York 1 Hesse Herman 1847 Estonia 3 Dick Philip 1920 New York 4 Hofstader Douglas 1945 New York 5 Russel Bertrand 1872 New York 6 Pirsig Robert 1928 Minnesota 7 Clarke Arthur 1917 Inghilterra COPIE Libreria ISBN Copie X GENERE Cod_genere Genere 0 Saggio 1 Romanzo 2 Fantascienza 3 Giallo

24 Implementazione:il DB Access libreria.mdb LIBRO ISBN Titolo Editore Anno Cod_autor Cod genere Prezzo Ubik Fanucci L Storia della filosofia occidentale Mondadori L Amicizia Newton L X Knulp Newton L Lo Zen e l arte della manutenz Adelphi L Goedel, Escher, Bach Adelphi L Moby Dick Adelphi L Lila Adelphi L X 2001: Odissea nello spazio Mondadori L

25 Libreria: implementazione del costruttore import java.sql.*; import java.io.*; class Libreria { Connection Con; Statement Stmt; Libreria(String FonteDatiODBC,String UserODBC, String PasswordODBC) // costruttore { try { Class.forName("sun.jdbc.odbc.JdbcOdbcDriver"); // carico il driver JdbcOdbc } catch(classnotfoundexception e) { System.out.println("Driver Jdbc-Odbc non presente"+e.getmessage()); } String url="jdbc:odbc:"+fontedatiodbc; try { // eseguo la connessione Con = DriverManager.getConnection(url, UserODBC, PasswordODBC); Stmt=Con.createStatement(); // creo un oggetto di tipo Stmt } catch(sqlexception e) { System.out.println("Problemi nella apertura di sessione con la fonte dati "+FonteDatiODBC+"\n"+ "verificare l esistenza della fontedati e la correttezza di User e Password");} }

26 Libreria:implementazione di Ricerca_X_Genere.. private ResultSet executequery(string Query) // questo metodo serve solo { // per catturare le eccezioni del metodo ResultSet rs=null; // executequery try { rs=stmt.executequery(query); } catch(sqlexception e) { System.out.println("Problemi con l'esecuzione della Query SQL: "+ Query);} return(rs); } public ResultSet Ricerca_X_Genere(String Genere) { String Query="SELECT ISBN,Titolo "+ "FROM Genere, Libro "+ "WHERE Genere.Cod_genere=Libro.Cod_genere "+ "AND Genere.genere = '"+Genere+"'"; return(executequery(query)); }

27 Libreria: implementazione di InserimentoAutore public int InserimentoAutore(Autore A) // la classe Autore non ha metodi. Ha le variabili { // Cognome, Nome,Anno_di_nascita, luogo_di_nascita int cod_autore=0; String Query="SELECT * "+ // verifico se l autore è già presente "FROM Autore "+ "WHERE Nome='"+A.Nome+"' and "+ " Cognome='"+A.Cognome+"'"; try { ResultSet rs=executequery(query); if (rs.next()) return(rs.getint("cod_autore")); // se è gia presente retituisco il codice relativo Query="SELECT MAX(Cod_autore) "+ // altrimenti seleziono il massimo Cod_autore " FROM Autore"; ResultSet rs=executequery(query); rs.next(); int max=rs.getint(1); cod_autore=max+1; // il nuovo Cod_autore è il max + 1 Query= INSERT INTO AUTORE (Cod_autore,Cognome,Nome,Anno_di_nascita,Luogo_di_nascita) "+ " VALUES ("+cod_autore+",'"+a.cognome+"','"+a.nome+"',"+ A.Anno_di_nascita+",'"+A.Luogo_di_nascita+"')"; int rc=executeupdate(query); } catch(sqlexception e) {System.out.println("Errore nell'inserimento dell'autore :"+e.getmessage());}}}

28 Libreria: implementazione di AggiornaCopie public void AggiornaCopie(String ISBN,int Lib,int Copie) { String Query="UPDATE Copie SET Copie = Copie+"+Copie+ " WHERE ISBN= "+ISBN+" AND"+ " Libreria="+Lib; if (executeupdate(query)==0) // il negozio non aveva nemmeno una copia { // inserisco una riga con il numero di copie Query="INSERT INTO Copie ( ISBN, Libreria, Copie ) "+ "VALUES( "+ISBN+","+Lib+","+Copie+")"; int rc=executeupdate(query); } }

29 Un esempio di uso della classe Libreria import java.sql.*; import java.io.*; import Libreria; import Libro; import Autore; class provajdbc{ public static void main(string args[]) throws Exception { Libreria L= new Libreria("libreria","libreria","libreria"); ResultSet rs=l.ricerca_x_genere("romanzo"); System.out.println( prima dell inserimento ); while (rs.next()) { String Titolo=rs.getString("Titolo"); String ISBN=rs.getString("ISBN"); System.out.println(Titolo+" "+ISBN); } Autore A=new Autore(); A.Cognome="Pennac"; A.Nome="Daniel"; A.Anno_di_nascita=1944; A.Luogo_di_nascita="Casablanca"; Libro Lib=new Libro(); Lib.ISBN=" "; Lib.Titolo="Signor Malaussene"; Lib.Editore="Feltrinelli"; Lib.Anno=1995; Lib.Genere="Romanzo"; Lib.cod_autore=L.InserimentoAutore(A); L.InserimentoLibro(Lib); System.out.println( dopo l inserimento ); rs=l.ricerca_x_genere("romanzo"); while (rs.next()) { String Titolo=rs.getString("Titolo"); String ISBN=rs.getString("ISBN"); System.out.println(Titolo+" "+ISBN); } } }

30 Esecuzione di provajdbc C:\jdk1.1>java provajdbc prima dell inserimento Lo Zen e l arte della manutenzione della motocicletta Lila Moby Dick Knulp X Amicizia dopo l inserimento Lo Zen e l arte della manutenzione della motocicletta Lila Moby Dick Knulp X Amicizia Signor Malaussene C:\jdk1.1>

31 Impostazione della fonte dati libreria 1) Add di una nuova fonte dati dal Data Source Administrator

32 Impostazione della fonte dati libreria 2) si seleziona il Driver per Access

33 Impostazione della fonte dati libreria 3) si inserisce il nome della fonte dati (libreria). Si Seleziona il file libreria.mdb dal tasto Seleziona e si seleziona il tasto Avanzate

34 Impostazione della fonte dati libreria 4) si inseriscono login e password (libreria,libreria)

JDBC. A. Bechini 2004. Accesso a DataD con Java

JDBC. A. Bechini 2004. Accesso a DataD con Java JDBC Accesso a DataD atabase ase con Java Utilizzo di DB da applicazioni esterne Un DB contiene e gestisce dati, importanti per varie operazioni supportate da applicazioni software Come può un applicazione

Dettagli

JDBC versione base. Le classi/interfacce principali di JDBC

JDBC versione base. Le classi/interfacce principali di JDBC JDBC versione base Java Database Connectivity è il package Java per l accesso a database relazionali il package contiene interfacce e classi astratte uno dei pregi è la completa indipendenza del codice

Dettagli

JDBC di base. Le classi/interfacce principali di JDBC

JDBC di base. Le classi/interfacce principali di JDBC JDBC di base Java Database Connectivity è il package Java per l accesso a database relazionali il package contiene interfacce e classi astratte completa indipendenza del codice dal tipo di database o di

Dettagli

JDBC: Introduzione. Java Database Connectivity (JDBC): parte 1. Schema dei legami tra le classi principali. Principali classi/interfacce di JDBC

JDBC: Introduzione. Java Database Connectivity (JDBC): parte 1. Schema dei legami tra le classi principali. Principali classi/interfacce di JDBC JDBC: Introduzione Java Database Connectivity (JDBC): parte 1 Gianluca Moro DEIS - Università di Bologna gmoro@deis.unibo.it Java Database Connectivity è il package Java per l accesso a database relazionali

Dettagli

Introduzione JDBC interfaccia java.sql driver caricare i driver

Introduzione JDBC interfaccia java.sql driver caricare i driver J D B C DISPENSE Introduzione JDBC (Java Database Connectivity) è un interfaccia completamente Java utilizzata per eseguire istruzioni SQL sui database. L'API JDBC si trova nel pacchetto java.sql; contiene

Dettagli

Non si deve fare ALCUN riferimento alla parte specifica di JDBC.

Non si deve fare ALCUN riferimento alla parte specifica di JDBC. Un applicazione per la quale sia fondamentale l indipendenza dal Database può essere scritta in Java usando le specifiche. (Package java.sql) Non devono essere usate chiamate specifiche del database: Si

Dettagli

Java EE 1. Andrea Bei

Java EE 1. Andrea Bei Java EE 1 Laboratorio di Ingegneria del Software Andrea Bei CBD (Component Based Development) interfaccia componente La definizione secondo il glossario "UML-User Guide" : "Un componente è una parte fisica

Dettagli

Esercitazione su JDBC

Esercitazione su JDBC Esercitazione su JDBC Basi di Dati L Ingegneria dei Processi Gestionali (Ilaria Bartolini - Roberto Cabras) come usare SQL (1) Le istruzioni SQL possono essere eseguite interattivamente Ese JDBC 2 come

Dettagli

CORSO DI ALGORITMI E PROGRAMMAZIONE. JDBC Java DataBase Connectivity

CORSO DI ALGORITMI E PROGRAMMAZIONE. JDBC Java DataBase Connectivity CORSO DI ALGORITMI E PROGRAMMAZIONE JDBC Java DataBase Connectivity Anno Accademico 2002-2003 Accesso remoto al DB Istruzioni SQL Rete DataBase Utente Host client Server di DataBase Host server Accesso

Dettagli

Accesso a Database con JDBC

Accesso a Database con JDBC 1 Sommario Accesso a Database con JDBC Introduzione architettura generale di riferimento flusso tipico delle applicazioni ODBC/JDBC ODBC architettura il flusso generale di un applicazione ODBC JDBC architettura

Dettagli

Laboratorio di reti II: Gestione di database lato server

Laboratorio di reti II: Gestione di database lato server Laboratorio di reti II: Gestione di database lato server Stefano Brocchi brocchi@dsi.unifi.it 23 marzo, 2009 Stefano Brocchi Laboratorio di reti II: Database 23 marzo, 2009 1 / 32 Uso di database lato

Dettagli

Java: la libreria delle classi

Java: la libreria delle classi Java: la libreria delle classi Applet anatomia di un applet cenni di html La libreria JDBC per l accesso ai database il package java.sql 213 Applet Un applet è una applicazione Java che ha una forma particolare

Dettagli

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

SQL. Laboratorio di Progettazione di Basi di Dati (CdS in Informatica e TPS) 1 SQL Laboratorio di Progettazione di Basi di Dati (CdS in Informatica e TPS) a.a. 2014/2015 http://www.di.uniba.it/~lisi/courses/basi-dati/bd2014-15.htm Dott.ssa Francesca A. Lisi dott.ssa Francesca A.

Dettagli

JDBC Driver Manager. JDBC Architettura generale. JDBC - Tipi di dato. JDBC - Flusso applicativo. JDBC - Tipi di dato. ODBC Driver. Livello di gestione

JDBC Driver Manager. JDBC Architettura generale. JDBC - Tipi di dato. JDBC - Flusso applicativo. JDBC - Tipi di dato. ODBC Driver. Livello di gestione Interfacce DBMS in breve Corso di BD1 Ripasso comandi applicazione JDBC Manipolazione estensioni OR in JDBC Interfacce per DBMS Problema: Far accedere un applicazione ad una base di dati Soluzione: Librerie

Dettagli

Basi di Dati Esercitazione JDBC. Giugno 2007

Basi di Dati Esercitazione JDBC. Giugno 2007 Basi di Dati Esercitazione JDBC Giugno 2007 Esercizi Considerando il seguente schema: Fornitori (CodiceFornitore, Nome, Indirizzo, Citta) Prodotti (CodiceProdotto, Tipo, Marca, Modello) Catalogo (CodiceFornitore,

Dettagli

JDBC: Java e database.

JDBC: Java e database. JDBC: Java e database. Introduzione all architettura e esempi di utilizzo 1.0 INTRODUZIONE ALL ARCHITETTURA JDBC è (anche se non ufficialmente riconosciuto da Sun) l acronimo per Java DataBase Connectivity.

Dettagli

Scheda 15 Accedere ai DataBase con JDBC

Scheda 15 Accedere ai DataBase con JDBC Scheda 15 Accedere ai DataBase con JDBC G IOVANNI PULITI Panoramica: che cosa è JDBC La API JDBC, introdotta per la prima volta con il JDK 1.0, è una API che permette di accedere a database relazionali

Dettagli

JDBC per l accesso Java a DB. Tito Flagella tito@link.it

JDBC per l accesso Java a DB. Tito Flagella tito@link.it JDBC per l accesso Java a DB Tito Flagella tito@link.it JDBC fornisce una libreria standard per l accesso a database relazionali Non è un acronimo ufficiale ma è comunemente interpretato come Java DataBase

Dettagli

Caricamento della classe driver. Apertura della connessione. DriverManager.getConnection() Creazione di uno statement

Caricamento della classe driver. Apertura della connessione. DriverManager.getConnection() Creazione di uno statement JDBC Programmazione in Ambienti Distribuiti V 1.4 Marco Torchiano 2006 Uso di JDBC Caricamento della classe driver Class.forName() Apertura della connessione DriverManager.getConnection() Creazione di

Dettagli

SQL e applicazioni. Capitolo 8. SQL e linguaggi di programmazione. Applicazioni ed SQL: architettura. Una difficoltà importante.

SQL e applicazioni. Capitolo 8. SQL e linguaggi di programmazione. Applicazioni ed SQL: architettura. Una difficoltà importante. SQL e applicazioni Capitolo 8 Applicazioni tradizionali In applicazioni complesse, l utente non vuole eseguire comandi SQL, ma programmi, con poche scelte SQL non basta, sono necessarie altre funzionalità,

Dettagli

Introduzione. 8- Programmazione di una base di dati attraverso JDBC ESEMPIO

Introduzione. 8- Programmazione di una base di dati attraverso JDBC ESEMPIO 8- Programmazione di una base di dati attraverso JDBC Introduzione ai differenti approcci - JDBC: Architettura e Programmazione Introduzione Nella pratica gli utenti finali accedono al contenuto di una

Dettagli

JDBC. Marco Tessarotto Programmazione dei Web Server Anno Accademico

JDBC. Marco Tessarotto Programmazione dei Web Server Anno Accademico JDBC Marco Tessarotto Programmazione dei Web Server Anno Accademico 2004-2005 JDBC JDBC (Java Database Connectivity) è una API Java per accedere ed elaborare dati in una sorgente dati (di solito un db

Dettagli

Accesso Web a Data Base

Accesso Web a Data Base Università degli Studi di Modena e Reggio Emilia Facoltà di Ingegneria Reggio Emilia CORSO DI TECNOLOGIE E APPLICAZIONI WEB Accesso Web a Data Base Ing. Marco Mamei Anno Accademico 2004-2005 M. Mamei -

Dettagli

DBMS ed Applicazioni Motivazioni

DBMS ed Applicazioni Motivazioni DBMS ed Applicazioni Motivazioni Sin ora abbiamo visto SQL come linguaggio per interrogare DBMS da interfaccia interattiva Nella pratica, un efficace sfruttamento delle potenzialità dei DBMS deriva dalla

Dettagli

PROVA FINALE Ingegneria del software

PROVA FINALE Ingegneria del software PROVA FINALE Ingegneria del software Ing. Jody Marca jody.marca@polimi.it Laboratorio N 4 Cos è JDBC 2 JDBC significa Java Database Connectivity Standard definito da Sun MicroSystems per connettere programmi

Dettagli

Indice. Java. JDBC è l interfaccia di base standard di Java ai database relaionali

Indice. Java. JDBC è l interfaccia di base standard di Java ai database relaionali Java java database connectivity -- jdbc G. Prencipe prencipe@di.unipi.it Indice JDBC: Java Data Base Connectivity connessioni a basi di dati esecuzione di statement SQL accesso ai result set JDBC: Java

Dettagli

Come trattare il risultato di un comando SQL (relazioni) che

Come trattare il risultato di un comando SQL (relazioni) che USO DI SQL DA PROGRAMMI: PROBLEMI 1 Come collegarsi alla BD Come trattare gli operatori SQL Come trattare il risultato di un comando SQL (relazioni) che Come scambiare informazioni sull esito delle operazioni.

Dettagli

Laboratorio di Sistemi Fondamenti di JDBC (parte1) Java. Fondamenti di JDBC

Laboratorio di Sistemi Fondamenti di JDBC (parte1) Java. Fondamenti di JDBC Fondamenti di JDBC Concetto di driver Il dialogo fra applicazione e DBMS non è mai gestito direttamente ma passa in genere per un opportuno modulo software chiamato driver che agisce da interfaccia fra

Dettagli

Corso di Informatica Modulo T3 B2 - Database in rete

Corso di Informatica Modulo T3 B2 - Database in rete Corso di Informatica Modulo T3 B2 - Database in rete 1 Prerequisiti Programmazione web Applicazione web Modello OSI Architettura client/server Conoscenze generali sui database Tecnologia ADO in Visual

Dettagli

Sviluppo Applicazioni Mobile Lezione 12 JDBC. Dr. Paolo Casoto, Ph.D - 2012

Sviluppo Applicazioni Mobile Lezione 12 JDBC. Dr. Paolo Casoto, Ph.D - 2012 + Sviluppo Applicazioni Mobile Lezione 12 JDBC + Cosa vediamo nella lezione di oggi Oggi analizzeremo insieme una specifica tecnologia Java per l accesso e la manipolazione di basi di dati relazionali

Dettagli

Basi di Dati: Corso di laboratorio

Basi di Dati: Corso di laboratorio Basi di Dati: Corso di laboratorio Lezione 10 Raffaella Gentilini 1 / 46 Sommario 1 Introduzione: DB e Programmazione 2 3 2 / 46 Approcci alla Programmazione di un DB Meccanismi Disponibili 1 Linguaggi

Dettagli

Lezione 9. Applicazioni tradizionali

Lezione 9. Applicazioni tradizionali Lezione 9 Applicazioni tradizionali Pag.1 Sommario Concetti trattati in questa lezione: SQL nel codice applicativo Cursori API native ODBC Pag.2 SQL nel codice applicativo I comandi SQL possono essere

Dettagli

JDBC. Dispense per il corso di Ingegneria del Web

JDBC. Dispense per il corso di Ingegneria del Web JDBC Dispense per il corso di Ingegneria del Web Revisione 05/11 Giuseppe Della Penna (giuseppe.dellapenna@di.univaq.it) Dipartimento di Informatica Università degli studi dell'aquila Java Database Connectivity:

Dettagli

19.1 - Lavorare con JDBC L'impiego di JDBC è semplice, e solitamente si articola attraverso quattro passi:

19.1 - Lavorare con JDBC L'impiego di JDBC è semplice, e solitamente si articola attraverso quattro passi: Lezione 19 Accesso ai database con JDBC JDBC (non è una sigla, secondo quanto sostenuto da Sun, anche se molti la interpretano come Java DataBase Connectivity) è un'interfaccia di programmazione che lavora

Dettagli

Sviluppo di applicazioni per basi di dati

Sviluppo di applicazioni per basi di dati Sviluppo di applicazioni per basi di dati 1 Sviluppo di applicazioni per basi di dati Quattro parti: Gestione dati Business rules (vincoli di integrità e dati derivati) Logica applicativa Interfaccia utente

Dettagli

Connessione ad una fonte di dati ODBC

Connessione ad una fonte di dati ODBC Linguaggio Java JDBC L architettura JDBC: driver, connessione, statement e result set Invio di comandi SQL Transazioni: COMMIT, ROLLBACK e livelli di isolamento Utizzo avanzato dei result set: cenni Connessione

Dettagli

Uso dei data bases con PHP. Prof. Francesco Accaino Iis Altiero Spinelli Sesto Sa Giovanni

Uso dei data bases con PHP. Prof. Francesco Accaino Iis Altiero Spinelli Sesto Sa Giovanni Uso dei data bases con PHP Prof. Francesco Accaino Iis Altiero Spinelli Sesto Sa Giovanni MDAC MDAC è l acronimo di Microsoft Data Access Component e fa parte della tecnologia Microsoft denominata Universal

Dettagli

UNIVERSITA DI FIRENZE Facoltà di Ingegneria. Persistenza Applicazioni Enterprise Uso dei modelli

UNIVERSITA DI FIRENZE Facoltà di Ingegneria. Persistenza Applicazioni Enterprise Uso dei modelli UNIVERSITA DI FIRENZE Facoltà di Ingegneria Persistenza Applicazioni Enterprise Uso dei modelli 1 IL problema della persistenza APPLICAZIONE (programmi) (oggetti) DATI PERSISTENTI (file, record) (basi

Dettagli

Basi di dati e Web (Moduli: Laboratorio e Siti Web centrati sui Dati) Prova scritta del 14 luglio 2008

Basi di dati e Web (Moduli: Laboratorio e Siti Web centrati sui Dati) Prova scritta del 14 luglio 2008 Basi di dati e Web (Moduli: Laboratorio e Siti Web centrati sui Dati) Prova scritta del 14 luglio 2008 Avvertenze: e severamente vietato consultare libri e appunti; chiunque verrà trovato in possesso di

Dettagli

Dominio applicativo. Progettazione. v SQL incluso in codice applicativo v Embedded SQL v Cursori v Dynamic SQL v JDBC v Stored procedures

Dominio applicativo. Progettazione. v SQL incluso in codice applicativo v Embedded SQL v Cursori v Dynamic SQL v JDBC v Stored procedures Dominio applicativo (Capitolo 6) v SQL incluso in codice applicativo v Embedded SQL v Cursori v Dynamic SQL v JDBC v Stored procedures Basi di dati 1 Docente Claudia Amari 1 Progettazione PROGETTAZIONE

Dettagli

Tecnologia e Applicazioni Internet 2011/12

Tecnologia e Applicazioni Internet 2011/12 Tecnologia e Applicazioni Internet 2011/12 Lezione 4 - Persistenza Matteo Vaccari http://matteo.vaccari.name/ matteo.vaccari@uninsubria.it Perché usare un DB relazionale? Per l accesso concorrente ai dati

Dettagli

JDBC Un API JAVA per accedere a Basi di Dati Relazionali. Contenuti. Cos è JDBC? Introduzione a JDBC. Perché JDBC. Inside JDBC.

JDBC Un API JAVA per accedere a Basi di Dati Relazionali. Contenuti. Cos è JDBC? Introduzione a JDBC. Perché JDBC. Inside JDBC. JDBC Un API JAVA per accedere a Basi di Dati Relazionali 1 Contenuti Introduzione a JDBC Perché JDBC R, Architetture client-server, ODBC Inside JDBC Driver, classi, interfacce Un esempio 2 Cos è JDBC?

Dettagli

SQL e linguaggi di programmazione Applicazioni ed SQL: architettura

SQL e linguaggi di programmazione Applicazioni ed SQL: architettura SQL e applicazioni Atzeni, Ceri, Paraboschi, Torlone Basi di dati McGraw-Hill, 1996-2002 Capitolo 5: SQL nei linguaggi di programmazione 21/10/2002 In applicazioni complesse, l utente non vuole eseguire

Dettagli

Programmazione Java Avanzata

Programmazione Java Avanzata Programmazione Java Avanzata Accesso ai Dati Ing. Giuseppe D'Aquì Testi Consigliati Eclipse In Action Core J2EE Patterns - DAO [http://java.sun.com/blueprints/corej2eepatterns/patterns/dataaccessobject.html]

Dettagli

DBMS ED APPLICAZIONI (CAPITOLO 6) SQL incluso in codice applicativo Embedded SQL Cursori Dynamic SQL JDBC Stored procedures

DBMS ED APPLICAZIONI (CAPITOLO 6) SQL incluso in codice applicativo Embedded SQL Cursori Dynamic SQL JDBC Stored procedures 1 DBMS ED APPLICAZIONI (CAPITOLO 6) SQL incluso in codice applicativo Embedded SQL Cursori Dynamic SQL JDBC Stored procedures Progettazione 2 Dominio Applicativo PROGETTAZIONE CONCETTUALE PROGETTAZIONE

Dettagli

Quando si sa chiaramente come si deve comportare l applicazione si può analizzare una possibile soluzione applicativa.

Quando si sa chiaramente come si deve comportare l applicazione si può analizzare una possibile soluzione applicativa. Introduzione alla tecnologia JMX 1 Viene analizzata l architettura sottostante le Java Managment Extensions (JMX) mostrandone un utilizzo applicativo e analizzando altri possibili scenari d uso di Ivan

Dettagli

JDBC. Di Michele de Nittis Versione 06/08/2008 www.mdenittis.it

JDBC. Di Michele de Nittis Versione 06/08/2008 www.mdenittis.it JDBC Di Michele de Nittis Versione 06/08/2008 www.mdenittis.it JDBC...1 Introduzione...2 Caricamento dell appropriato Driver JDBC...2 Classi...3 Connection...4 Statement...5 PreparedStatement...6 ResultSet...7

Dettagli

Interfaccia JDBC. Sistemi Informativi L-A. Home Page del corso: http://www-db.deis.unibo.it/courses/sil-a/ Versione elettronica: JDBC.

Interfaccia JDBC. Sistemi Informativi L-A. Home Page del corso: http://www-db.deis.unibo.it/courses/sil-a/ Versione elettronica: JDBC. Interfaccia JDBC Sistemi Informativi L-A Home Page del corso: http://www-db.deis.unibo.it/courses/sil-a/ Versione elettronica: JDBC.pdf Sistemi Informativi L-A come usare SQL (1) Le istruzioni SQL possono

Dettagli

Siti web centrati sui dati Architettura MVC-2: i JavaBeans

Siti web centrati sui dati Architettura MVC-2: i JavaBeans Siti web centrati sui dati Architettura MVC-2: i JavaBeans 1 ALBERTO BELUSSI ANNO ACCADEMICO 2009/2010 Limiti dell approccio SEVLET UNICA La servlet svolge tre tipi di funzioni distinte: Interazione con

Dettagli

JDBC: SQL NEI LINGUAGGI DI PROGRAMMAZIONE

JDBC: SQL NEI LINGUAGGI DI PROGRAMMAZIONE JDBC: SQL NEI LINGUAGGI DI PROGRAMMAZIONE Disheng Qiu disheng.qiu@gmail.com SQL e Applicazioni In applicazioni complesse, l utente non vuole eseguire comandi SQL, ma programmi, con poche scelte SQL non

Dettagli

Programmazione Java Avanzata Spring - JDBC

Programmazione Java Avanzata Spring - JDBC Programmazione Java Avanzata Spring - JDBC Ing. Gianluca Caminiti Riferimenti Spring http://www.springsource.org/ (scaricate il reference) Beginning Spring 2 - From Novice to Professional. APress. 2008

Dettagli

DATABASE IN RETE E PROGRAMMAZIONE LATO SERVER

DATABASE IN RETE E PROGRAMMAZIONE LATO SERVER DATABASE IN RETE E PROGRAMMAZIONE LATO SERVER L architettura CLIENT SERVER è l architettura standard dei sistemi di rete, dove i computer detti SERVER forniscono servizi, e computer detti CLIENT, richiedono

Dettagli

UNIVERSITA DI FIRENZE Facoltà di Ingegneria. Persistenza Applicazioni Enterprise Uso dei modelli

UNIVERSITA DI FIRENZE Facoltà di Ingegneria. Persistenza Applicazioni Enterprise Uso dei modelli UNIVERSITA DI FIRENZE Facoltà di Ingegneria Persistenza Applicazioni Enterprise Uso dei modelli 1 IL problema della persistenza APPLICAZIONE (programmi) (oggetti) DATI PERSISTENTI (file, record) (basi

Dettagli

SQL nei linguaggi di programmazione

SQL nei linguaggi di programmazione SQL nei linguaggi di programmazione Atzeni, Ceri, Paraboschi, Torlone Basi Di Dati Modelli e Linguaggi di Interrogazione, McGraw-Hill Italia, Capitolo 6 SQL in Linguaggi di Programmazione L uso diretto

Dettagli

Programmazione delle basi di dati attraverso JDBC

Programmazione delle basi di dati attraverso JDBC Programmazione delle basi di dati attraverso JDBC Dispense di Basi di dati Queste breve note non hanno la pretesa di essere un nuovo libro di testo sulle tecnologie informatiche. Vogliono invece costituire

Dettagli

Interoperabilità. Open Database Connectivity (ODBC)

Interoperabilità. Open Database Connectivity (ODBC) Interoperabilità L utilizzo contemporaneo di sorgenti di dati (data source) eterogenee in singole applicazioni è il principale problema in progetti complessi e distribuiti. La soluzione passa attraverso

Dettagli

Funzioni scalari in SQL. Capitolo 5. coalesce. nullif. Altre funzioni scalari. case

Funzioni scalari in SQL. Capitolo 5. coalesce. nullif. Altre funzioni scalari. case Funzioni scalari in SQL Capitolo 5 Costrutti definiti in SQL-2 che estendono la sintassi delle espressioni nella target list coalesce nullif case Prof. Stefano Paraboschi Vengono valutate per ogni riga

Dettagli

APPENDICE. Procedure in SQL (1)

APPENDICE. Procedure in SQL (1) APPENDICE Procedure in SQL Transazioni in SQL Embedded SQL Remote Procedure Call Appendice 1 Procedure in SQL (1) Standard SQL2 permette di definire procedure, associate a singoli comandi SQL, memorizzate

Dettagli

Architettura MVC-2: i JavaBeans

Architettura MVC-2: i JavaBeans Siti web centrati sui dati Architettura MVC-2: i JavaBeans Alberto Belussi anno accademico 2008/2009 Limiti dell approccio SEVLET UNICA La servlet svolge tre tipi di funzioni distinte: Interazione con

Dettagli

Esercitazione 4 JDBC

Esercitazione 4 JDBC JDBC Obiettivi dell esercitazione Familiarizzare con l'organizzazione dell'ambiente di lavoro per la realizzazione di applicazioni Java Utilizzare i costrutti di base della libreria JDBC per 1. la gestione

Dettagli

APPENDICE B Le Active Server Page

APPENDICE B Le Active Server Page APPENDICE B Le Active Server Page B.1 Introduzione ad ASP La programmazione web è nata con la Common Gateway Interface. L interfaccia CGI tuttavia presenta dei limiti: ad esempio anche per semplici elaborazioni

Dettagli

Applicazioni tradizionali

Applicazioni tradizionali 1 BASI DI DATI Paolo Zirilli Applicazioni tradizionali Concetti di questa lezione SQL nel codice applicativo SQL incluso in codice applicativo Embedded SQL Cursori Dynamic SQL JDBC Stored procedures I

Dettagli

Java e i database. Che cosa sono i database?

Java e i database. Che cosa sono i database? 2001 proprietà di MokaByte s.r.l. tutti i diritti riservati è vietata la riproduzione non autorizzata anche parziale Java e i database DI NICOLA VENDITTI Che cosa sono i database? Ogni giorno nel mondo

Dettagli

Programmazione Java: JDBC

Programmazione Java: JDBC Programmazione Java: JDBC romina.eramo@univaq.it http://www.di.univaq.it/romina.eramo/tlp Roadmap Introduzione Risorse Driver Contesto Applicativo SQL Classi e interfacce Passi» Registrare un driver» Stabilire

Dettagli

Tecnologie di Sviluppo per il Web

Tecnologie di Sviluppo per il Web Tecnologie di Sviluppo per il Web Programmazione su Basi di Dati: ADO.NET versione 1.1 Questo lavoro è concesso in uso secondo i termini di una licenza Creative Commons (vedi ultima pagina) G. Mecca mecca@unibas.it

Dettagli

Esercitazione sulle libpq - libreria C per PostgreSQL

Esercitazione sulle libpq - libreria C per PostgreSQL Esercitazione sulle libpq - libreria C per PostgreSQL Roberto Tronci roberto.tronci@diee.unica.it Basi di Dati A.A. 2007/2008 Tronci ( roberto.tronci@diee.unica.it ) Esercitazione libpq Basi di Dati 2007/2008

Dettagli

Servlet & JDBC ALBERTO BELUSSI ANNO ACCADEMICO 2009/2010. Servlet: interazione con un DBMS. In Java è possibile interagire con un DBMS attraverso

Servlet & JDBC ALBERTO BELUSSI ANNO ACCADEMICO 2009/2010. Servlet: interazione con un DBMS. In Java è possibile interagire con un DBMS attraverso Servlet & JDBC 1 ALBERTO BELUSSI ANNO ACCADEMICO 2009/2010 Servlet: interazione con un DBMS In Java è possibile interagire con un DBMS attraverso l uso della libreria JDBC (Java Database Connectivity).

Dettagli

MDAC. Attualmente la versione disponibile di MDAC è la 2.8 ma faremo riferimento alla 2.6. ADO Active Data Objects ADO OLE DB ODBC

MDAC. Attualmente la versione disponibile di MDAC è la 2.8 ma faremo riferimento alla 2.6. ADO Active Data Objects ADO OLE DB ODBC MDAC MDAC è l acronimo di Microsoft Data Access Component e fa parte della tecnologia Microsoft denominata Universal Data Access (UDA). Mette a disposizione una serie di componenti per l accesso a svariate

Dettagli

Laboratorio Progettazione Web PHP e MySQL. Andrea Marchetti IIT-CNR 2013/2014

Laboratorio Progettazione Web PHP e MySQL. Andrea Marchetti IIT-CNR 2013/2014 Laboratorio Progettazione Web PHP e MySQL Andrea Marchetti IIT-CNR 2013/2014 Architettura di una applicazione Web Browser Web HTTP Server Web API Dati Presentation Application Storage PHP e DataBase Quando

Dettagli

Ingegneria del Software: JDBC. laura.bacci@unipv.it

Ingegneria del Software: JDBC. laura.bacci@unipv.it Ingegneria del Sftware: JDBC laura.bacci@unipv.it Che csa è JDBC Un insieme di API standard per accedere ai database relazinali Separa e nascnde i dettagli dell specific database all applicazine che l

Dettagli

Database e reti. Piero Gallo Pasquale Sirsi

Database e reti. Piero Gallo Pasquale Sirsi Database e reti Piero Gallo Pasquale Sirsi Approcci per l interfacciamento Il nostro obiettivo è, ora, quello di individuare i possibili approcci per integrare una base di dati gestita da un in un ambiente

Dettagli

Laboratorio Progettazione Web PHP e MySQL - Lezione 9. Andrea Marchetti IIT-CNR andrea.marchetti@iit.cnr.ita 2012/2013

Laboratorio Progettazione Web PHP e MySQL - Lezione 9. Andrea Marchetti IIT-CNR andrea.marchetti@iit.cnr.ita 2012/2013 Laboratorio Progettazione Web PHP e MySQL - Lezione 9 Andrea Marchetti IIT-CNR andrea.marchetti@iit.cnr.ita 2012/2013 Architettura di una applicazione Web Browser Web HTTP Server Web API Dati Presentation

Dettagli

Laboratorio di Basi di Dati e Multimedia

Laboratorio di Basi di Dati e Multimedia Laboratorio di Basi di Dati e Multimedia Laurea in Tecnologie dell Informazione: Multimedia Docente: Alessandra Di Pierro Email: dipierro@sci.univr.it Lezione 7 Java DataBase Connectivity JDBC consente

Dettagli

TUTORIAL. CREAZIONE DI TRIGGER IN ORACLE LITE 8i MEDIANTE CLASSI JAVA

TUTORIAL. CREAZIONE DI TRIGGER IN ORACLE LITE 8i MEDIANTE CLASSI JAVA TUTORIAL CREAZIONE DI TRIGGER IN ORACLE LITE 8i MEDIANTE CLASSI JAVA Michele de Nittis Generalità... 2 Modello di Caricamento e Pubblicazione... 3 Modello Per Allegato (Attachment)... 9 Esempio di creazione

Dettagli

Capitoli 8 e 9. SQL embedded. Applicazioni tradizionali Applicazioni Internet. Sistemi di basi di dati Raghu Ramakrishnan, Johannes Gehrke

Capitoli 8 e 9. SQL embedded. Applicazioni tradizionali Applicazioni Internet. Sistemi di basi di dati Raghu Ramakrishnan, Johannes Gehrke Capitoli 8 e 9 Applicazioni tradizionali Applicazioni Internet SQL embedded SQL nel codice applicativo I comandi SQL possono essere chiamati dall interno di un programma in un linguaggio ospite (ad esempio

Dettagli

PHP 5. PHP ed i database. Database e tabelle. Struttura di un DB relazionale. Accesso a database

PHP 5. PHP ed i database. Database e tabelle. Struttura di un DB relazionale. Accesso a database PHP ed i database PHP 5 Accesso a database PHP funziona con molti database relazionale che includono: Oracle Access Postgres SQL Server MySQL Useremo MySQL poiché è semplice da usare, gratuito e molto

Dettagli

FileMaker 12. Guida ODBC e JDBC

FileMaker 12. Guida ODBC e JDBC FileMaker 12 Guida ODBC e JDBC 2004 2012 FileMaker, Inc. Tutti i diritti riservati. FileMaker, Inc. 5201 Patrick Henry Drive Santa Clara, California 95054 FileMaker e Bento sono marchi di FileMaker, Inc.

Dettagli

PHP e Structured Query Language

PHP e Structured Query Language Esercitazioni del corso di Tecnologie per la Comunicazione Aziendale PHP e Structured Query Language Marco Loregian loregian@disco.unimib.it www.siti.disco.unimib.it/didattica/tca2008 Interrogazioni (ripasso)

Dettagli

Esempio di architettura software

Esempio di architettura software Esempio di architettura software Corso di Principi di Progettazione del Software, a.a. 2012/13 29 novembre 2016 Ing. Roberto Vergallo 1 Esempio di architettura software View (GUI) Action Listener Business

Dettagli

Corso di Informatica. Prerequisiti. Modulo T3 B3 Programmazione lato server. Architettura client/server Conoscenze generali sui database

Corso di Informatica. Prerequisiti. Modulo T3 B3 Programmazione lato server. Architettura client/server Conoscenze generali sui database Corso di Informatica Modulo T3 B3 Programmazione lato server 1 Prerequisiti Architettura client/server Conoscenze generali sui database 2 1 Introduzione Lo scopo di questa Unità è descrivere gli strumenti

Dettagli

Al giorno d oggi, i sistemi per la gestione di database

Al giorno d oggi, i sistemi per la gestione di database Introduzione Al giorno d oggi, i sistemi per la gestione di database implementano un linguaggio standard chiamato SQL (Structured Query Language). Fra le altre cose, il linguaggio SQL consente di prelevare,

Dettagli

Gestione delle eccezioni in Java

Gestione delle eccezioni in Java Gestione delle eccezioni in Java - Introduzione al concetto di eccezioni E possibile definire un eccezione come un situazione imprevista che il flusso di un applicazione può incontrare. È possibile gestire

Dettagli

Corso di Web Programming

Corso di Web Programming Corso di Web Programming 11. PHP - Complementi Paolo Milazzo Dipartimento di Informatica, Università di Pisa http://www.di.unipi.it/ milazzo milazzo di.unipi.it Corso di Laurea in Informatica Applicata

Dettagli

Perchè un database? Perchè un database? Tipi di DataBase. Scegliere un database. ! Sicurezza. ! Evitare la ridondanza. ! Architettura multilivello

Perchè un database? Perchè un database? Tipi di DataBase. Scegliere un database. ! Sicurezza. ! Evitare la ridondanza. ! Architettura multilivello ! Evitare la ridondanza Perchè un database? Avere PHP che assembla le pagine velocemente da un modello ed un DB è un esperienza unica. Con lo sforzo di programmazione di una pagina, si possono produrre

Dettagli

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

L 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

Dettagli

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

Data 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

Dettagli

Stored 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 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

Dettagli

Servlet e JDBC. Servlet e Web Server. Servlet e Web Server. Servlet e Web Server. Richieste. Servlet. Servlet:

Servlet e JDBC. Servlet e Web Server. Servlet e Web Server. Servlet e Web Server. Richieste. Servlet. Servlet: e JDBC Programmazione in Rete e Laboratorio Matteo Baldoni Dipartimento di Informatica Universita` degli Studi di Torino C.so Svizzera, 185 I-10149 Torino e : estensioni del Java API permettono di scrivere

Dettagli

Lavorare con MySQL Parte Seconda.

Lavorare con MySQL Parte Seconda. Lavorare con MySQL Parte Seconda. PHP, dalla versione 4.0, usufruisce difunzioni native per colloquiare con MySQL, senza appoggiarsi ad alcuna libreria o modulo esterno. In questa lezione verranno esaminate

Dettagli

Parte II: Reti di calcolatori Lezione 10

Parte II: Reti di calcolatori Lezione 10 Università di Roma Tor Vergata Corso di Laurea triennale in Informatica Sistemi operativi e reti A.A. 2013-14 Pietro Frasca Parte II: Reti di calcolatori Lezione 10 Giovedì 3-04-2014 1 Reti per la distribuzione

Dettagli

Il DBMS Oracle. Express Edition. Donatella Gubiani e Angelo Montanari

Il DBMS Oracle. Express Edition. Donatella Gubiani e Angelo Montanari Gubiani & Montanari Il DBMS Oracle 1 Il DBMS Oracle Express Edition Donatella Gubiani e Angelo Montanari Il DBMS Oracle Il DBMS Oracle Oracle 10g Express Edition Il DBMS Oracle (nelle sue versioni più

Dettagli

Applicazione ASP di esempio

Applicazione ASP di esempio Applicazione ASP di esempio Database in rete Prof. Claudio Maccherani Un server web è un programma che gira su un computer sempre collegato ad Internet e che mette a disposizione file, pagine e servizi.

Dettagli

Corso sul linguaggio Java

Corso sul linguaggio Java Corso sul linguaggio Java Modulo JAVA6 A1 I file testo 1 Prerequisiti Programmazione base in Java Utilizzo di classi e oggetti Modello produttore consumatore Operazioni logiche su struttura file 2 1 Introduzione

Dettagli

Triggers. Basi dati attive. Trigger. Indipendenza della conoscenza

Triggers. Basi dati attive. Trigger. Indipendenza della conoscenza Basi dati attive Triggers Antonella Poggi Domenico Lembo Dipartimento di informatica e Sistemistica SAPIENZA Università di Roma Progetto di Applicazioni Software Anno accademico 2009-2010 Una base di dati

Dettagli

Laboratorio Progettazione Web PHP e MySQL - Lezione 9. Andrea Marchetti IIT-CNR andrea.marchetti@iit.cnr.ita 2011/2012

Laboratorio Progettazione Web PHP e MySQL - Lezione 9. Andrea Marchetti IIT-CNR andrea.marchetti@iit.cnr.ita 2011/2012 Laboratorio Progettazione Web PHP e MySQL - Lezione 9 Andrea Marchetti IIT-CNR andrea.marchetti@iit.cnr.ita 2011/2012 Architettura di una applicazione Web Browser Web HTTP Server Web PHP Dati View Control

Dettagli

Tool. 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 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

Dettagli

PHP 5. Accesso a database

PHP 5. Accesso a database PHP 5 Accesso a database PHP ed i database PHP funziona con molti database relazionali che includono: Oracle Access Postgres SQL Server MySQL Useremo MySQL poiché è semplice da usare, gratuito e molto

Dettagli

Università degli Studi di Bologna Facoltà di Ingegneria. Tecnologie Web L-A A.A. 2014 2015. Esercitazione 08 DAO e Hibernate

Università degli Studi di Bologna Facoltà di Ingegneria. Tecnologie Web L-A A.A. 2014 2015. Esercitazione 08 DAO e Hibernate Università degli Studi di Bologna Facoltà di Ingegneria Tecnologie Web L-A A.A. 2014 2015 Esercitazione 08 DAO e Hibernate Agenda Pattern DAO e framework Hibernate progetto d'esempio relativo alla gestione

Dettagli

Tutorial MYSQL. Creazione linked server con Microsoft SQL Server per lettura dati da MYSQL. Validità: Febbraio 2013

Tutorial MYSQL. Creazione linked server con Microsoft SQL Server per lettura dati da MYSQL. Validità: Febbraio 2013 Tutorial MYSQL Creazione linked server con Microsoft SQL Server per lettura dati da MYSQL Validità: Febbraio 2013 Questa pubblicazione è puramente informativa. SISECO non offre alcuna garanzia, esplicita

Dettagli

Informatica Generale Andrea Corradini. 19 - Sistemi di Gestione delle Basi di Dati

Informatica Generale Andrea Corradini. 19 - Sistemi di Gestione delle Basi di Dati Informatica Generale Andrea Corradini 19 - Sistemi di Gestione delle Basi di Dati Sommario Concetti base di Basi di Dati Il modello relazionale Relazioni e operazioni su relazioni Il linguaggio SQL Integrità

Dettagli