CORSO DI ALGORITMI E PROGRAMMAZIONE. JDBC Java DataBase Connectivity



Похожие документы
JDBC versione base. Le classi/interfacce principali di JDBC

JDBC. A. Bechini Accesso a DataD con Java

Introduzione JDBC interfaccia java.sql driver caricare i driver

JDBC di base. Le classi/interfacce principali di JDBC

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

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

Lezione 9. Applicazioni tradizionali

Esercitazione su JDBC

Java: la libreria delle classi

Corso di Informatica Modulo T3 B2 - Database in rete

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

Scheda 15 Accedere ai DataBase con JDBC

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

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

Accesso Web a Data Base

Laboratorio di reti II: Gestione di database lato server

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

COME CREARE E COLLEGARSI AD UN DATABASE MICROSOFT SQL SERVER O SUN MYSQL

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

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

PROVA FINALE Ingegneria del software

Esercitazione 4 JDBC

Esercitazione sulle libpq - libreria C per PostgreSQL

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

Programmazione Java Avanzata Spring - JDBC

SPSS Inc. Data Access Pack - Istruzioni di installazione per Windows

Installazione e configurazione di Java DB in Windows (7)

Accesso a Database con JDBC

Architettura MVC-2: i JavaBeans

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

Accesso a basi di dati con ASP. Algoritmo per visualizzare un DB

Fate doppio click sul file con nome postgresql-8.0.msi e impostate le varie voci come riportato nelle immagini seguenti:

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

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

Manuale per la configurazione di AziendaSoft in rete

FileMaker 12. Guida ODBC e JDBC

Dispensa di database Access

Tecnologie di Sviluppo per il Web

Database e reti. Piero Gallo Pasquale Sirsi

Guida all Installazione del ProxyFatturaPA

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

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

SITI-Reports. Progetto SITI. Manuale Utente. SITI-Reports. ABACO S.r.l.

DBMS. Esempi di database. DataBase. Alcuni esempi di DBMS DBMS. (DataBase Management System)

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

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

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

Applicazione ASP di esempio

Sviluppo di applicazioni per basi di dati

Data Base in Internet

Lavorare con MySQL Parte Seconda.

FileMaker 13. Guida ODBC e JDBC

FileMaker 8. Installazione dei driver client FileMaker 8 ODBC e JDBC

La gestione documentale con il programma Filenet ed il suo utilizzo tramite la tecnologia.net. di Emanuele Mattei (emanuele.mattei[at] .

REQUISITI TECNICI HR INFINITY ZUCCHETTI

JAVA JDBC. Andrea BEI

Fondamenti di Informatica 1. Prof. B.Buttarazzi A.A. 2010/2011

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

Esercitazione 02: JDBC, SQL e DB SAMPLE

Access. P a r t e p r i m a

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

FileMaker 9. Guida ODBC e JDBC

Fast Query Manuale Utente. Fast Query Manuale Utente

Visualizzazione ordini in MyShopDB

Basi di Dati Esercitazione JDBC

Strumenti per la programmazione

ISTRUZIONI INSTALLAZIONE PMANGO

Come configurare JCREATOR (1/3)

Approfondimenti. Contenuti

Trasformazione DB Access In SQL Server. Michele De Nittis

appunti delle lezioni Architetture client/server: applicazioni server

PMF Integration Tools

Installazione Alfresco Avanzata

Registri RMI. Massimo Merro Univ. Verona Programmazione di Rete 90 / 247

Prova Finale a.a. 2011/2012. Laboratorio 1: Introduzione a Java e Eclipse

Le Reti Informatiche

FileMaker 14. Guida ODBC e JDBC

DATABASE IN RETE E PROGRAMMAZIONE LATO SERVER

Interoperabilità. Open Database Connectivity (ODBC)

Come installare e configurare il software FileZilla

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

Corso di Reti di Calcolatori L-A

Laboratorio di sistemi SELECT e checkbox Jsp [Java]

Licenza per sito Manuale dell amministratore

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

Componenti di una applicazione. Un programma applicativo è strutturato come un insieme organizzato di tre componenti funzionali:

Транскрипт:

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 remoto al DB JDBC fornisce uno strato di accesso verso database completo e soprattutto ad oggetti Accesso generalizzato a livello applicazione Indipendenza dal tipo di DataBase Uso di driver forniti dal produttore di DataBase

Architettura software Host Client Java Application JDBC API JDBC Driver Manager JDBC-ODBC Bridge Pure Java JDBC Driver ODBC Host server Database Server

Accesso remoto al DB Istruzioni SQL PostgreSQL Rete Utente Host client PostgreSQL Server di DataBase Host server Linux Utilizza drivers JDBC scritti interamente in Java

Accesso remoto al DB PostgreSQL Applicativo java come front-end al Database Connessione diretta tramite rete, con protocollo proprietario Server di Database relazionale ad oggetti PostgreSQL fornisce le classi java jdbc per il client

PostgreSQL Host Client JDBC Java Application PostgreSQL Pure Java JDBC Host server PostgreSQL DataBase Server

Accesso remoto al DB Microsoft ODBC Istruzioni SQL Utente ODBC Layer Rete Archivi locali Host client Utilizza drivers JDBC-ODBC bridge DataBase Host remoto

ODBC Layer Interfaccia intermedia del Client per connettersi al database Rappresenta una serie di C-Level API Dipendente dalla piattaforma Microsoft Drivers non scritti in puro Java

ODBC Layer Host Client General Application JDBC Java Application JDBC-ODBC Bridge ODBC Layer Access ODBC Driver Manager Excel Paradox dbase Oracle Host remoto DataBase su host remoto

Esempio: uso di AccessApp DataBase remoto Applicazione java per il front-end ad un DataBase

AccessApp Permette di impostare comandi e query SQL al DataBase remoto e di visualizzarne i risultati. Richiede: Driver jdbc, classe principale in Java URL al database. Dipende dal driver impostato Eventuale utente con diritti di accesso al DataBase. Per comodita non e richiesta password

Esempio: uso di AccessApp per PostgreSQL Utente Portatile collegato alla rete del dipartimento Internet PostgreSQL DataBase di nome: javadb Server Linux con Indirizzo IP: 192.167.30.130

AccessApp per PostgreSQL Occorre prima aggiungere alla directory locale jre/lib/ext della propria JVM usata per eseguire AccessApp, la libreria jdbc7.1-1.2.jar Inumeri7.1-1.2 dipendono dalla versione della libreria. Essa contiene tutte le classi Java usate per accedere a PostgreSQL mediante JDBC. Viene fornita con PostgreSQL

AccessApp Driver: per PostgreSQL org.postgresql.driver E la classe Java principale (driver) per accedere a PostgreSQL URL: jdbc:postgresql://host-server/nome-db Rappresentazione standard usata per referenziare una risorsa in Internet. Specifica protocollo, host-server e DataBase a cui connettersi

AccessApp Esempio: Driver: per PostgreSQL org.postgresql.driver URL: jdbc:postgresql://192.167.30.130/javadb USER: SQL: javauser select * from alunni Si collega al DataBase javadb presente sul server 192.167.30.130 come utente javauser ed esegue la query

AccessApp per PostgreSQL Esempio di query select

Esempio: uso di AccessApp con Microsoft ODBC Occorre registrare il DataBase presso l amministratore dati ODBC Nel Pannello di controllo, icona Origine dati ODBC(32 bit)

Microsoft ODBC 1 2 1. DSN di sistema 2. Pulsante Aggiungi

Microsoft ODBC Esempio: si vuole registrare un archivio locale di Access 1 1. Microsoft Access Driver 2. Pulsante Fine 2

Microsoft ODBC 1 2 1. nome ODBC 2. Pulsante Seleziona 3. Selezione del file Access 3

Microsoft ODBC Ilnome origine dati (nome ODBC=accessdb) deve essere univoco poiche identifica il DataBase selezionato Il nome ODBC verra specificato con JDBC per accedere al DataBase corrispondente.

AccessApp Esempio: Driver: URL: USER: SQL: sun.jdbc.odbc.jdbcodbcdriver jdbc:odbj:accessdb select * from alunni per ODBC Si collega al DataBase accessdb che referenzia un archivio Access locale. Non richiede un utente specifico.

AccessApp per ODBC Esempio di query select

Esempio: StatementODBC Semplice applicazione Java per eseguire comandi SQL su un DataBase ODBC. Sintassi: Esempio: java StatementODBC nome-odbc istruzione-sql java StatementApp accessdb select * from alunni Le istruzioni necessarie per collegarsi ad un database sono: Class.forName("sun.jdbc.odbc.JdbcOdbcDriver"); carica il driver specificato. In questo caso usa JdbcOdbc bridge Connection conn = DriverManager.getConnection("jdbc:odbc:accessdb","",""); tenta la connessione al database accessdb. No user, no password

StatementODBC Se la connessione al DB va a buon fine, la chiamata del metodo torna un oggetto di tipo Connection col quale si crea un oggetto Statement tramite il quale è possibile effettuare la query sul database: Statement stm = conn.createstatement(); ResultSet rs = stm.executequery( select * from alunni ); L oggetto ResultSet rappresenta il risultato di una query come sequenza di record che si ottiene mediante un ciclo while sul metodo rs.next();

StatementODBC Un semplice esempio che stampa solo la prima colonna di un ResultSet ottenuto dall esecuzione di una query: while (rs.next()) { System.out.print(rs.getString(1)); } Il metodo rs.getstring(1); torna il valore della prima colonna del record corrente. Si cicla mentre ci sono ancora record da stampare, ovvero rs.next() torna il valore true. Nel programma si usa il metodo displayresult(rs), più completo e generalizzato, che stampa anche il nome di ogni colonna e il carattere come separatore di campo di ogni record.

Codice di StatementODBC import java.sql.*; class StatementODBC { public static void main(string args[]) { if(args.length!=2){ System.out.println("Scrivere: java StatementODBC nome-odbc sql"); System.out.println("Esempio: java StatementODBC accessdb \"select * from alunni\""); System.exit(0); } try{ Class.forName("sun.jdbc.odbc.JdbcOdbcDriver"); String url="jdbc:odbc:"+args[0]; Connection conn = DriverManager.getConnection(url,"",""); Statement stm = conn.createstatement(); ResultSet rs = stm.executequery(args[1]); if(rs!=null) displayresults(rs); conn.close(); }catch(exception ex){ System.out.println(ex); System.exit(0); } } // metodo main

Codice di StatementODBC static void displayresults(resultset r) throws SQLException { ResultSetMetaData rmeta = r.getmetadata(); // stampa i nomi delle colonne int numcolumns=rmeta.getcolumncount(); for(int i=1;i<=numcolumns;++i) { if(i<numcolumns) System.out.print(rmeta.getColumnName(i)+" "); else System.out.println(rmeta.getColumnName(i)); } // stampa i dati di ogni riga while(r.next()){ for(int i=1;i<=numcolumns;++i) { if(i<numcolumns) System.out.print(r.getString(i)+" "); else System.out.println(r.getString(i).trim()); } // for } // while } // metodo displayresults } // classe StatementApp