Condividi tramite


Utilizzo del driver JDBC

In questa sezione viene fornita una guida introduttiva alla creazione di una connessione semplice a un database SQL Server utilizzando il driver JDBC per Microsoft SQL Server. Prima di connettersi a un database SQL Server, è necessario installare prima SQL Server nel computer locale o in un server e quindi il driver JDBC nel computer locale.

Scelta del file JAR corretto

Con il driver JDBC versione 2.0 per Microsoft SQL Server vengono forniti i file di libreria di classi, sqljdbc.jar e sqljdbc4.jar, da utilizzare a seconda delle impostazioni preferite di Java Runtime Environment (JRE). Per ulteriori informazioni sul file JAR da scegliere, vedere Requisiti di sistema per il driver JDBC.

Impostazione del classpath

Il driver JDBC non fa parte di Java SDK. Se si desidera utilizzarlo, è necessario impostare il classpath per includere il file sqljdbc.jar o sqljdbc4.jar. Se nel classpath manca una voce per il file sqljdbc.jar o sqljdbc4.jar, nell'applicazione verrà generata un'eccezione comune di classe non trovata.

I file sqljdbc.jar e sqljdbc4.jar vengono installati nel seguente percorso:

<directory di installazione>\sqljdbc_<versione>\<lingua>\sqljdbc.jar

<directory di installazione>\sqljdbc_<versione>\<lingua>\sqljdbc4.jar

Nell'esempio seguente viene riportata l'istruzione CLASSPATH utilizzata per un'applicazione di Windows:

CLASSPATH =.;C:\Program Files\Microsoft SQL Server JDBC Driver\sqljdbc_2.0\enu\sqljdbc.jar

Nell'esempio seguente viene riportata l'istruzione CLASSPATH utilizzata per un'applicazione di Unix e Linux:

CLASSPATH =.:/home/usr1/mssqlserverjdbc/Driver/sqljdbc_2.0/enu/sqljdbc.jar

È necessario assicurarsi che l'istruzione CLASSPATH contenga un solo driver JDBC Microsoft SQL Server, ad esempio sqljdbc.jar o sqljdbc4.jar.

Nota

Nei sistemi Windows i nomi di directory con lunghezza superiore a 8.3 caratteri o i nomi delle cartelle con spazi possono causare problemi con i classpath. In questo caso, si consiglia di spostare provvisoriamente il file sqljdbc.jar osqljdbc4.jar in un nome di directory semplice quale C:\Temp, modificare il classpath e verificare se in questo modo il problema è stato risolto.

Applicazioni eseguite direttamente dal prompt dei comandi

Il classpath è configurato nel sistema operativo. Accodare sqljdbc.jar o sqljdbc4.jar al classpath del sistema. In alternativa, specificare il classpath nella riga di comando Java che esegue l'applicazione utilizzando l'opzione java -classpath.

Applicazioni eseguite in un IDE

Ogni fornitore IDE offre un metodo diverso per impostare il classpath nel proprio IDE. La semplice impostazione del classpath nel sistema operativo non funzionerà. È necessario aggiungere sqljdbc.jar o sqljdbc4.jar al classpath IDE.

Servlet e JSP

Servlet e JSP vengono eseguiti in un motore servlet/JSP, ad esempio Tomcat. Il classpath deve essere impostato in base alla documentazione del motore del servlet/JSP. La semplice impostazione del classpath nel sistema operativo non funzionerà. Alcuni motori del servlet/JSP offrono schermate di installazione utilizzabili per impostare il classpath del motore. In questo caso è necessario accodare il file JDBC Driver JAR corretto al classpath del motore esistente e riavviare il motore. In altri casi è possibile distribuire il driver copiando il file sqljdbc.jar o sqljdbc4.jar in una directory specifica, ad esempio lib, durante l'installazione del motore. Il classpath del driver del motore può anche essere indicato in un file di configurazione specifico.

Enterprise Java Beans

Le piattaforme Enterprise Java Beans (EJB) vengono eseguite in un contenitore EJB. I contenitori EJB provengono da vari fornitori. Le applet Java vengono eseguite nel browser ma sono scaricate da un server Web. Copiare il file sqljdbc.jar o sqljdbc4.jar nella radice del server Web e specificare il nome del file JAR nel tag HTML archive dell'applet, ad esempio <applet ... archive=sqljdbc.jar>.

Creazione di una connessione semplice a un database

Se si utilizza la libreria di classi sqljdbc.jar, le applicazioni devono innanzitutto registrare il driver, come indicato di seguito:

Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");

Una volta caricato il driver, è possibile stabilire una connessione utilizzando un URL di connessione e il metodo getConnection della classe DriverManager:

String connectionUrl = "jdbc:sqlserver://localhost:1433;" +
   "databaseName=AdventureWorks;user=MyUserName;password=*****;";
Connection con = DriverManager.getConnection(connectionUrl);

Nell'API di JDBC 4.0 il metodo DriverManager.getConnection è stato ottimizzato in modo da consentire il caricamento automatico dei driver JDBC. Le applicazioni non devono pertanto chiamare il metodo Class.forName per registrare o caricare il driver quando si utilizza la libreria di classi sqljdbc4.jar.

Quando si chiama il metodo getConnection della classe DriverManager, viene individuato un driver appropriato nell'insieme di driver JDBC registrati. Il file sqljdbc4.jar include il file "META-INF/services/java.sql.Driver", che contiene com.microsoft.sqlserver.jdbc.SQLServerDriver come driver registrato. Le applicazioni esistenti, utilizzate attualmente per caricare i driver tramite Class.forName, continueranno a funzionare senza alcuna modifica.

Nota

La libreria di classi sqljdbc4.jar richiede la versione 6.0 o successiva di Java Runtime Environment (JRE).

Per ulteriori informazioni su come connettersi con origini dati e utilizzare un URL di connessione, vedere Costruzione dell'URL della connessione e Impostazione delle proprietà delle connessioni.

Vedere anche

Altre risorse

Panoramica del driver JDBC