Interfacce DBMS in breve
|
|
- Alessia Oliva
- 5 anni fa
- Visualizzazioni
Transcript
1 Interfacce DBMS in breve Corso di BD1 Ripasso comandi applicazione JDBC Manipolazione estensioni OR in JDBC 1 Interfacce per DBMS Problema: Far accedere un applicazione ad una base di dati Soluzione: Librerie di funzioni (SQL/CLI) Chi crea queste librerie? Caso 1: Librerie proprietarie del DBMS, applicazione dipendente dal DBMS (es. Oracle Call Interface OCI) Caso 2: Librerie standard, applicazione indipendente dal DBMS 2 1
2 Interfacce per DBMS Sono state quindi definite interfacce standard: ODBC (Open DataBase Connectivity ): scritta in C JDBC (Java Data Base Connectivity): scritta in Java le operazioni supportate sono sostanzialmente le stesse, anche se in JDBC la sintassi è più semplice 3 Architettura di riferimento 4 2
3 JDBC (Java Data Base Connectivity) 5 JDBC (che non è solo un acronimo ma un trademark della SUN) è stato sviluppato nel 1996 dalla Sun Rappresenta una API standard per interagire con basi di dati da un programma Java (grazie a Java c è indipendenza dalla piattaforma) Operazioni possibili: Connessione ad DBMS Creazione ed invio di statement SQL Ricezione e manipolazione del risultato API JDBC Java Applications JDBC API API JDBC Driver Manager API JDBC Driver JDBC Driver 6 DBMS DBMS 3
4 JDBC Driver Manager Livello di gestione Gestisce i driver disponibili, scegliendo quello piu appropriato 7 JDBC - Driver Realizzano la connessione col DBMS Esistono quattro tipi di driver: 1. JDBC-ODBC Bridge + ODBC Driver 2. A native-api partly Java technology-enabled driver 3. Pure Java Driver for Database Middleware -portabili 4. Direct-to-Database Pure Java Driver. -scritti java 8 4
5 JDBC Architettura generale client server Java Application JDBC Driver Manager JDBC/ODBC bridge (1) JDBC/API nativa(2) JDBC/Mid dleware(3) JDBC/ java driver(4) ODBC Driver Native driver DB Middleware 9 DBMS JDBC - Tipi di dato JDBC definisce un insieme di tipi SQL, che vengono poi mappati in tipi Java Gli identificatori sono definiti nella classe java.sql.types 10 5
6 JDBC - Tipi di dato 11 JDBC Types Mapped to Java Types JDBC Type Java Type CHAR String VARCHAR String LONGVARCHAR String NUMERIC java.math.bigdecimal DECIMAL java.math.bigdecimal BIT boolean TINYINT byte SMALLINT short INTE G E R int BIGINT long REAL float FLOAT double DOUBLE double BINARY byte[] VARBINARY byte[] LONGVARBINARY byte[] DATE java.sql.date TIME java.sql.time TIMESTAMP java.sql.timestamp JDBC - Flusso applicativo Passo 1: Caricamento driver JDBC Passo 2: Connessione DBMS Passo 3: Creazione ed esecuzione statement Passo 4: Elaborazione risultato Passo 5: Disconnessione La gestione delle eccezioni è necessaria (SQLException) 12 6
7 JDBC - Connessione Per realizzare la connessione vengono utilizzate le seguenti classi ed interfacce: interfaccia java.sql.driver classe java.sql.drivermanager interfaccia java.sql.connection 13 JDBC-Passo 1: Caricamento driver interfaccia java.sql.driver: Non viene esplicitamente utilizzata a livello applicativo Per registrare driver utilizzati nella connessione 14 7
8 JDBC - Passo 1: Caricamento driver import java.sql.*; //import package 15 class JdbcTest { public static void main (String args []) { Class.forName ("oracle.jdbc.oracledriver"); //caricamento del driver che si intende utilizzare } } JDBC - Passo 2: Connessione classe java.sql.drivermanager Insieme all interfaccia java.sql.driver gestisce i driver disponibili Quando viene istanziato un oggetto Driver viene automaticamente registrato nella classe DriverManager Effettua la connessione al DBMS 16 8
9 JDBC - Passo 2: Connessione interfaccia java.sql.connection: Rappresenta una connessione attiva la DBMS permette di inviare una serie di richieste SQL al DBMS 17 JDBC - Passo 2: Connessione È possibile connettersi a qualunque database, locale e remoto, specificandone l URL In JDBC, l URL è formato da tre parti: jdbc: <subprotocol>: <subname> <subprotocol> identifica il driver o il meccanismo di connessione al database (dipende dal DBMS) <subname> dipende da subprotocol ed identifica lo specifico database (dipende dal DBMS) 18 9
10 JDBC - Passo 2: Connessione-Esempi 19 jdbc:oracle:thin:@everest:1521:gen: subprotocol: Oracle subname: thin specifica che deve essere utilizzato Oracle ODBC Thin driver Everest specifica il nome della macchina 1521: numero porta GEN: nome database Oracle jdbc:mysql://cannings.org:3306/test subprotocol: MySQL subname: cannings.org specifica il nome della macchina 3306 : numero porta test : nome database MySQL se si usa JDBC-ODBC driver: jdbc:odbc:subname JDBC - Passo 2: Connessione La connessione avviene chiamando il metodo getconnection() della classe DriverManager, che restituisce un oggetto di tipo Connection Connection con = DriverManager.getConnection("jdbc:oracle:thin:@lu mpy:1521:dbname", mylogin", mypwd"); Se uno dei driver caricati riconosce l URL fornito dal metodo, il driver stabilisce la connessione 20 10
11 JDBC - Passo 2: Connessione Class JdbcTest { Public static void main (String args []) { Class.forName ("oracle.jdbc.oracledriver"); Connection con= DriverManager.getConnection("jdbc:oracle:thin:@localhost:15 21:dylan", "scott", "tiger"); } } 21 JDBC - Passo 3: Creazione statement Tipi statement: Statement non preparati: il piano di accesso viene generato immediatamente prima dell esecuzione, query semplici SENZA parametri; 22 Statement preparati: la generazione del piano di accesso e l esecuzione sono due fasi distinte Il piano può essere generato una sola volta ed eseguito più volte Utile quando la stessa operazione deve essere eseguita con parametri diversi 11
12 JDBC - Passo 3: Creazione statement non preparati Un oggetto di tipo Statement viene creato a partire da un oggetto di tipo Connection e permette di inviare comandi SQL al DBMS: Connection con; Statement stmt = con.createstatement(); //e overloaded Si noti che l oggetto statement non è ancora associato all istruzione SQL da eseguire Tale istruzione verrà specificata al momento dell esecuzione 23 Uno stesso oggetto Connection puo creare piu oggetti Statement JDBC - Passo 3: Creazione statement preparati Un oggetto di tipo PreparedStatement viene creato a partire da un oggetto di tipo Connection e permette di inviare comandi SQL al DBMS: PreparedStatement queryimp = con.preparestatement( SELECT * FROM IMPIEGATI"); La creazione di uno statement preparato richiede la specifica dello statement che dovrà poi essere eseguito 24 12
13 JDBC - Passo 3: Esecuzione statement non preparati Esistono 3 metodi diversi in base al tipo dello statement SQL query: Query SQL (SELECT): (StatementObj).executeQuery(query) RISULTATO: Oggetto ResultSet Statement di modifica (DML o DDL): (StatementObj).executeUpdate(query) RISULTATO: Numero righe modificate (0 in caso di statement DDL) 25 Statement SQL (non conosciuto a priori) : (StatementObj).execute(query) RISULTATO: true o false JDBC - Passo 3: Esecuzione statement non preparati Per eseguire una query: stmt.executequery( SELECT * FROM IMPIEGATI"); Per eseguire una operazione di aggiornamento (DML), inclusi gli statement DDL: stmt.executeupdate( INSERT INTO IMPIEGATI VALUES ( AB34, Gianni, Rossi, GT67,1500)"); stmt.executeupdate("create TABLE PROVA (CAMPO1 NUMBER) ); 26 13
14 JDBC - Passo 3: Esecuzione statement preparati Esistono 3 metodi diversi in base al tipo dello statement SQL: Query SQL (SELECT): (StatementObj).executeQuery() RISULTATO: Oggetto ResultSet Statement di modifica (DML o DDL): (StatementObj).executeUpdate() RISULTATO: Numero righe modificate (0 in caso di statement DDL) 27 Statement SQL (non conosciuto a priori): (StatementObj).execute() RISULTATO: true o false JDBC - Passo 3: Uso parametri in statement preparati Utilizzando PreparedStatement posso passare parametri ad una query I parametri sono identificati da? I parametri vengono settati mediante: (StatementObj).setXXX(n, value) Dove : -XXX e un tipo Java (String, Byte, Short, ) -n e il numero del parametro? da settare -value e il valore del parametro 28 14
15 JDBC - Passo 3: Uso parametri in statement preparati Esempio: PreparedStatement queryimp = con.preparestatement( SELECT * FROM IMPIEGATI WHERE Nome =? And Cognome=?"); I parametri possono poi essere associati allo statement preparato quando diventano noti. queryimp.setstring(1, Paolo ); // il primo parametro (1) identifica il? che si vuole considerare queryimp.setstring(2, Rossi ); queryimp.executequery(): //esegue lo statement 29 JDBC - Passo 3: Esecuzione statement Il terminatore dello statement (es. ; ) viene inserito direttamente dal driver prima di sottomettere lo statement al DBMS per l esecuzione Metodo (StatementObj).close() fine processamento dello statement e rilascio delle risorse 30 15
16 JDBC - Passo 4: Elaborazione risultato Utilizzo un oggetto ResultSet per ritornare e manipolare il risultato di una query, cioe tabella (soprattutto oggetti Statement) Esempio: String query = " SELECT * FROM IMPIEGATI "; Statement stmt= conn.createstatement(); ResultSet rs = stmt.executequery(query); 31 JDBC - Passo 4: Elaborazione risultato Un oggetto ResultSet mantiene il cursore sulla riga corrente (inizialmente e la prima) 32 Il metodo next() permette di spostarsi nel result set (cursore): while (rs.next()) //ritorna true,false {/* get current row */} li valore di ritorno e false quando non ci sono più tuple da analizzare Esistono altri metodi per muovere il cursore (previous(), first(), ) 16
17 JDBC - Passo 4: Elaborazione risultato Accesso agli attributi con: A) (ResultsetObj).getXXX(column-name) B) (ResultsetObj).getXXX(column-number) Dove: - XXX è il tipo Java nel quale il valore deve essere convertito A) String s = rs.getstring( Cognome"); B) String s = rs.getstring(2); int n = rs.getint(5); 33 Usare getint() per valori numerici, getstring() per char, varchar JDBC - Passo 5: Disconnessione Per risparmiare risorse, può essere utile chiudere gli oggetti di classe Connection, Statement, ResultSet quando non vengono più utilizzati metodo close() la chiusura di un oggetto di tipo Connection chiude tutti gli Statement associati mentre la chiusura di uno Statement chiude ResultSet associati 34 17
18 Utilizzo di funzionalità OR da JDBC Consideriamo JDBC 3 (ma molte estensioni già presenti in JDBC 2) JDBC 3 conforme SQL99, tipi collezione: no MULTISET, solo ARRAY Nuove interfacce per implementare mapping di tipi object relational in tipi Java 35 JDBC - Creazione nuovi tipi Essendo un comando DDL, si utilizza il metodo executeupdate String type = "CREATE TYPE t_indirizzo AS OBJECT (" + "via VARCHAR(50),"+ "numero_civico INTEGER," + "cap INTEGER," + "città VARCHAR(20),"+ "provincia VARCHAR(2),"+ "stato VARCHAR(2))"; 36 Statement st = con.createstatement( ); // non prepared statement st.executeupdate(type); 18
19 JDBC - Manipolazione nuovi tipi 37 Nuove interfacce standard JDBC (solo per tipi standard): STRUCT per mappare ADT REF per mappare valori di tipo riferimento ARRAY per mappare valori di tipo array SQLDATA per semplificare mapping di ADT JDBC - Manipolazione valori nuovi tipi Per ogni interfaccia, il driver JDBC relativo ad un particolare DBMS, specificherà una classe che implementa l interfaccia Questo permette di gestire le eventuali differenze esistenti tra DBMS 38 19
20 JDBC - Tipi semplici Non è introdotta nuova interfaccia Si manipolano utilizzando i metodi del tipo di base Esempio CREATE TYPE id_impiegato AS INTEGER FINAL; Si usano i metodi getint() e setint() per leggere e scrivere campi di tipo id_impiegato 39 JDBC - ADT 40 Le istanze di tipi ADT vengono mappate in istanze di classe Struct Un oggetto di tipo Struct contiene un valore per ogni attributo dell ADT a cui si riferisce I metodi per poter leggere e scrivere valori di attributi con tipo ADT sono ResultSet - getobject(int): per accedere istanza ADT Struct - getattributes(): per accedere le componenti di un istanza (attributi) PreparedStatement - setobject(int, Struct): per settare parametri di tipo ADT 20
21 JDBC - ADT - Esempio type="create TABLE Impiegati ("+ "imp# INTEGER,"+ "nome VARCHAR(20),"+ "cognome VARCHAR(20),"+ "indirizzo t_indirizzo)"; vogliamo attribuire all impiegato con nome= Gianni cognome= Verdi lo stesso indirizzo dell impiegato che ha imp#=12 41 Esempio (continua) String query = select indirizzo from Impiegati where imp# = 12 ; Statement st = con.createstatement(); ResultSet rs = st.executequery(query); rs.next(); Struct indirizzo = (Struct) rs.getobject(1); //si ottiene l istanza Object[ ] ind_attr = indirizzo.getattributes(); //si accedono gli attributi System.out.print( Via + ind_attr[0] + + ind_attr[1] + + ind_attr[2] + + ind_attr[4] + + ind_attr[3]); 42 21
22 Esempio (continua) String up = update Impiegati set indirizzo =? where nome = Verdi ; PreparedStatement pst = con.preparestatement(up); pst.setobject(1, indirizzo); pst.executeupdate( ); 43 Tipi riferimento 44 Le istanze di tipi riferimento (puntatori) vengono mappate in istanze di classe Ref i metodi per poter leggere e scrivere valori di attributi con tipo riferimento sono ResultSet - getref(int): per accedere attributi di tipo riferimento Ref - getobject( ): dato un valore di tipo riferimento, restituisce l oggetto puntato (solo JDBC 3) Ref - setobject(struct): il parametro diventa il nuovo oggetto puntato (solo JDBC 3) PreparedStatement - setref(int, Ref): per settare parametri di tipo riferimento 22
23 Tipi riferimento - Esempio CREATE TYPE t_progetto AS prj# INTEGER, nome VARCHAR(20), descrizione VARCHAR(50), budget INTEGER; CREATE TABLE Progetti of t_progetto; 45 CREATE TABLE Impiegati( imp# INTEGER PRIMARY KEY, nome VARCHAR(50), indirizzo t_indirizzo, assegnamento REF(t_progetto)); Tipi riferimento - Esempio (continua) Si vuole associare il progetto dell impiegato 12 a Verdi e visualizzare le informazioni su tale progetto 46 23
24 Tipi riferimento - Esempio (continua) String query = select assegnamento from Impiegati where imp# = 12 ; Statement st = con.createstatement(); ResultSet rs = st.executequery(query); rs.next(); 47 Tipi riferimento - Esempio (continua) Ref assegn_ref = rs.getref(1); //si ottiene l identificatore String update = update impiegati set assegnamento =? where nome = Verdi ; PreparedStatement pst = con.preparestatement(update); pst.setref(1,assegn_ref); pst.executeupdate( ); 48 Struct progetto = (Struct) assegn_ref.getobject( ); Object [ ] prog_attr = progetto. getattributes(); System.out.print(ind_attr[0] + + ind_attr[1] + + ind_attr[2] ind_attr[3]); 24
25 49 Tipi array Le istanze di tipi SQL Array vengono mappate in istanze di classe Array I metodi per poter leggere e scriverevaloridiattributiditipo array sono ResultSet - getarray(): per accedere attributi di tipo array (restituisce un puntatore all istanza) Array - getarray( ): permette di copiare i dati contenuti nell array in strutture locali al programma Array - getresultset (): restituisce un result set che contiene una tupla per ogni elemento dell array, con due colonne. La prima contiene l indice (partendo da 1), la seconda il valore PreparedStatement - setarray(int,array): per settare parametri di tipo Array Tipi array - Esempio CREATE TABLE Impiegati( imp# INTEGER, nome VARCHAR(50), indirizzo t_indirizzo, competenze VARCHAR(20) ARRAY[10]); si vogliono stampare tutte le competenze dell impiegato
26 Tipi array - Esempio (continua) String query = select competenze from Impiegati where imp# = 12 ; Statement st = con.createstatement(); ResultSet rs = st.executequery(query); rs.next(); Array comp = rs.getarray(1); //restituisce un puntatore all array String [ ] comp_arr = (String [ ]) comp.getarray( ); for (int i = 0; i < comp_arr.length(); i++) System.out.print(comp_arr[i]) 51 Tipi collezione Varray tipo array il driver potrà eventualmente utilizzare la classe Array anche per gestire altri tipi collezione in JDBC le nested table di Oracle si mappano in oggetti di tipo Array 52 26
27 SQL Data 53 Interfaccia ogni classe che implementa SQLData permette di definire un mapping esplicito tra un tipo SQL e una classe Java casting definito esplicitamente dall utente semplifica l accesso agli oggetti strutturati la lettura di un oggetto restituisce un istanza della classe associata dal mapping non si devono piu utilizzare Struct e Object non lo vediamo 27
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
DettagliAccesso 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
DettagliJDBC 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
DettagliNon 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
DettagliJDBC 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
DettagliJDBC: 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
DettagliJDBC. 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
DettagliCORSO 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
DettagliIntroduzione 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
DettagliProgrammazione 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
DettagliJava: 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
DettagliEsercitazione 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
DettagliJDBC 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
DettagliBasi 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
DettagliPROVA 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
DettagliLaboratorio 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
DettagliJDBC 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?
DettagliInterfaccia 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
DettagliDominio 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
DettagliLaboratorio 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
DettagliJDBC: 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.
DettagliDBMS 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
DettagliIndice. 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
DettagliSQL. 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.
DettagliBasi 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,
DettagliJAVA JDBC. Andrea BEI (andrea.bei@libero.it)
JAVA JDBC Andrea BEI (andrea.bei@libero.it) JDBC: API JDBC (Java DataBase Connectivity) è una API per l accesso a DataBase relazionali sviluppata da SUN. Permette ad applicazioni JAVA di eseguire istruzioni
DettagliCome 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.
DettagliCorso 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
DettagliDBMS 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
DettagliTesting delle classi. MySQL DBMS
Testing delle classi Corso di Principi di Progettazione del Software, a.a. 2015/16 17 novembre 2015 Ing. Roberto Vergallo 1 MySQL DBMS MySQL Community Server http://www.mysql.it/downloads/mysql/5.1.html
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
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
DettagliIntroduzione. 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
DettagliSviluppo 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
DettagliSQL 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à,
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,
DettagliScheda 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
DettagliMotivazione. SQL e linguaggi di programmazione. Completezza computazionale. Completezza a livello di sistema. Accoppiamento (coupling)
SQL e linguaggi di programmazione Motivazione SQL supporta la definizione e la manipolazione di dati relazionali tuttavia, SQL da solo non è sufficiente a programmare un intera applicazione non è computazionalmente
DettagliSviluppo 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
DettagliCaricamento 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
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
DettagliJDBC. 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:
DettagliSQL 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
DettagliApplicazioni 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
DettagliTecnologia 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
DettagliConnessione 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
DettagliProgrammazione 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
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
DettagliCorso di Laboratorio di Applicazioni Informatiche. Progetti di Basi di Dati a.a. 2008-9
Corso di Laboratorio di Applicazioni Informatiche Progetti di Basi di Dati a.a. 2008-9 Outline Obbiettivi Tecnologie Struttura di un progetto Esempi Deadlines Conlusioni Obbiettivi Applicare le conoscenze
DettagliSQL Server 2008. Architettura Client-Server. SQL Server 2008. Introduzione all uso di SQL Server 2008. Dutto Riccardo. http://dbdmg.polito.
SQL Server 2008 Introduzione all uso di SQL Server 2008 Dutto Riccardo http://dbdmg.polito.it SQL Server 2008 Gestione dei server OLAP e OLTP Gestione Utenti Creazione e gestione DB SQL Server Business
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
DettagliLezione 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
DettagliTUTORIAL. 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
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)
DettagliIngegneria 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
DettagliSQL 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
DettagliCapitoli 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
DettagliUniversità di Roma T or Vergata Facoltà di Ingegneria Corso di Basi di Dati A.A. 2001/2002. Andrea D'Ambrogio
, di Basi di Dati 12 novembre 2001 1 Università di Roma T or Vergata Facoltà di Ingegneria di Basi di Dati A.A. 2001/2002 -DYD 'DWDEDVH &RQQHFWLYLW\ Andrea D'Ambrogio 12 novembre 2001! "#$% &'((%)"**"+
DettagliJDBC: 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
DettagliIl problema. SQL da programma. Il problema - Esempio. Il problema. Estensioni imperative di SQL. Approcci
Il problema Come abbiamo visto, SQL permette in modo dichiarativo di accedere i dati memorizzati in una base di dati il suo potere espressivo è però limitato questo significa che non tutte le elaborazioni
DettagliSQL da programma. Il problema
1 Il problema Come abbiamo visto, SQL permette in modo dichiarativo di accedere i dati memorizzati in una base di dati il suo potere espressivo è però limitato questo significa che non tutte le elaborazioni
Dettagli19.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
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
DettagliProgrammazione 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]
DettagliFunzioni 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
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:
DettagliCAPITOLO 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
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
DettagliSQL. 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 francesca.lisi@uniba.it
DettagliUNIVERSITA 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
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
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
DettagliAccesso 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 -
DettagliGuida Metodologica Accesso ai Dati Oracle da Java
Controllo delle copie Il presente documento, se non preceduto dalla pagina di controllo identificata con il numero della copia, il destinatario, la data e la firma autografa del Responsabile della Qualità,
DettagliVBA è un linguaggio di scripting derivato da Visual Basic, da cui prende il nome. Come ogni linguaggio ha le sue regole.
Excel VBA VBA Visual Basic for Application VBA è un linguaggio di scripting derivato da Visual Basic, da cui prende il nome. Come ogni linguaggio ha le sue regole. 2 Prima di iniziare. Che cos è una variabile?
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
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
DettagliDB2 Universal Database (UDB) DB2 Universal Database (UDB)
DB2 Universal Database (UDB) Sistemi Informativi L-A Home Page del corso: http://www-db.deis.unibo.it/courses/sil-a/ Versione elettronica: DB2Presentazione2009.pdf Sistemi Informativi L-A DB2 Universal
DettagliBasi di Dati e Sistemi Informativi. Database NoSQL. Corso di Laurea in Ing. Informatica Ing. Gestionale Magistrale
Giuseppe Loseto Corso di Laurea in Ing. Informatica Ing. Gestionale Magistrale NoSQL (Not Only SQL) I principali metodi d implementazione dei database NoSQL sono i seguenti: Column Store/Column Family
DettagliJDBC. Java Database Connection. (dal corso dei Servizi Web) Java Database Connection (JDBC) - I. JDBC e ODBC. Java Database Connection (JDBC) - II
Java Database Connection Java Database Connection () - I sviluppati per offrireinterfaccia standardizzata tra applicazioni Java ed i database relazionali (RDBMS) package java.sql (dal corso dei Servizi
DettagliJDBC. 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
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
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,
DettagliBasi di Da( MySQL & MySQL Workbench. Anna Monreale
Basi di Da( MySQL & MySQL Workbench Anna Monreale MySQL MySQL è un DBMS gratuito ed open- source (h@p://www.mysql.com) MySQL può essere uilizzato in Windows, Linux, MacOS X. MySQL è un RDBMS (relaional
DettagliLaboratorio di Programmazione Lezione 1. Cristian Del Fabbro
Laboratorio di Programmazione Lezione 1 Cristian Del Fabbro Reperibilità homepage corso: https://users.dimi.uniud.it/~cristian.delfabbro/teaching.php email: cristian.delfabbro@uniud.it telefono: 0432 558676
DettagliLA REALIZZAZIONE DI APPLICAZIONI ALCUNE ARCHITETTURE
LA REALIZZAZIONE DI APPLICAZIONI ALCUNE ARCHITETTURE Quattro parti: Gestione dati Client-Server Logica + interfaccia Logica + interfaccia Business rules Sistema di comunicazione Logica applicativa DBMS:
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
DettagliIL CONCETTO DI FILE. È illecito operare oltre la fine del file.
IL CONCETTO DI FILE Un file è una astrazione fornita dal sistema operativo, il cui scopo è consentire la memorizzazione di informazioni su memoria di massa. Concettualmente, un file è una sequenza di registrazioni
DettagliLA REALIZZAZIONE DI APPLICAZIONI. Quattro parti: Gestione dati. Business rules. Logica applicativa. Interfaccia utente. Molte possibili architetture
LA REALIZZAZIONE DI APPLICAZIONI Quattro parti: Gestione dati Business rules Logica applicativa Interfaccia utente Molte possibili architetture L approccio tradizionale: uso di un linguaggio PLSQL 1.1
DettagliUniversità 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
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
DettagliEsercitazione 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
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
DettagliTecnologie 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
DettagliUso 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
DettagliUNIVERSITA 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
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
DettagliJava 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
DettagliSQL (STRUCTURED QUERY LANGUAGE)
SQL (STRUCTURED QUERY LANGUAGE) Prof. Nicoletta D Alpaos & Prof. Andrea Borghesan SQL DDL Data Definition Language DML Data Manipulation Language DCL Data Control Language DDL Obiettivo: Definire la struttura
DettagliLaboratorio 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