MS SQL und Java

Zugriff auf MS-SQL Datenbank mit Java.

Installation JDBC Treiber

Download des JDBC-Treiber von Microsoft. Die Datei sqljdbc41.jar muss in den Klassenpfad. Alternative aus dem Open-Source Bereich ist jDTS.

MS-JDBC per Maven

Laut den Hinweisen von http://claude.betancourt.us/add-microsoft-sql-jdbc-driver-to-maven/, für Version 4.1 den Treiber dem lokalen Maven Repository hinzufügen:

mvn install:install-file -Dfile=sqljdbc41.jar -Dpackaging=jar -DgroupId=com.microsoft.sqlserver -DartifactId=sqljdbc41 -Dversion=4.1

In der pom.xml referenzieren:

<dependency>
    <groupId>com.microsoft.sqlserver</groupId>
    <artifactId>sqljdbc4</artifactId>
    <version>4.1</version>
</dependency>

Oder in pom.xml direkt auf die lokale .jar verweisen:

<dependency>
    <groupId>com.microsoft.sqlserver</groupId>
    <artifactId>sqljdbc4</artifactId>
    <version>4.1</version>
    <scope>system</scope>
    <systemPath>${basedir}/lib/sqljdbc41.jar</systemPath>
    <optional>true</optional>
</dependency>

Test

    try {

       // register driver
       DriverManager.registerDriver(new com.microsoft.sqlserver.jdbc.SQLServerDriver());

       // create connection
       /*NOTE: if you want to use Windows authentication mode (integratedSecurity=true), you must have the sqljdbc_auth.dll in the classpath.*/
       String dbURL = "jdbc:sqlserver://127.0.0.1";
       String user = "USER";
       String pass = "PW";
       conn = DriverManager.getConnection(dbURL, user, pass);
       if (conn != null) {
           System.out.println("Connected");
            DatabaseMetaData dm = (DatabaseMetaData) conn.getMetaData();
            System.out.println("Driver name: " + dm.getDriverName());
            System.out.println("Driver version: " + dm.getDriverVersion());
            System.out.println("Product name: " + dm.getDatabaseProductName());
            System.out.println("Product version: " + dm.getDatabaseProductVersion());
       }
    } catch (SQLException e) {
       e.printStackTrace();
    }