Posts Tagged ‘JDBC’

  1. Hello, JDBC Type2(Groovy) World!

    Posted on 10月 2nd, 2012 by cx20

    JDBC Type2

    JDBC(Java Database Connectivity)は、Java 用のデータベース接続 API である。実装方法によりType1~4の4つのタイプが存在する。
    Type2 は JDBC と DBMS クライアントの API をマップさせたブリッジドライバである。
    例えば、Oracle であればクライアントライブラリとして OCI が使用される。
    以下は Groovy による JDBC ライブラリの使用例となっている。

    ソースコード(Groovy + JDBC Type2 + Oracle)

    import groovy.sql.Sql
    class Hello {
        static void main(args) {
            Sql sql = Sql.newInstance("jdbc:oracle:oci:@orcl", 
               "scott", "tiger", "oracle.jdbc.driver.OracleDriver")
            sql.eachRow("SELECT 'Hello, JDBC Type2 World!' AS Message FROM DUAL"){
                println it.Message
            }
        }
    }

    実行方法

    C:¥> groovy Hello.groovy
    C:¥> groovy -cp "ojdbc6.jar;." Hello.groovy

    実行結果

    Hello, JDBC Type2 World!
  2. Hello, JDBC Type1(Groovy) World!

    Posted on 10月 1st, 2012 by cx20

    JDBC Type1

    JDBC(Java Database Connectivity)は、Java 用のデータベース接続 API である。実装方法によりType1~4の4つのタイプが存在する。
    Type1 は JDBC と ODBC の API をマップさせたブリッジドライバである。
    以下は Groovy による JDBC ライブラリの使用例となっている。

    ソースコード(Groovy + JDBC Type1 + ODBC + Jet データベース)

    import groovy.sql.Sql
    class Hello {
        static void main(args) {
            Sql sql = Sql.newInstance("jdbc:odbc:Driver={Microsoft Access Driver (*.mdb)};DBQ=.\hello.mdb", 
               "", "", "sun.jdbc.odbc.JdbcOdbcDriver")
            sql.eachRow("SELECT 'Hello, JDBC Type1 World!' AS Message"){
                println it.Message
            }
        }
    }

    ソースコード(Groovy + JDBC Type1 + ODBC + ACE データベース)

    import groovy.sql.Sql
    class Hello {
        static void main(args) {
            Sql sql = Sql.newInstance("jdbc:odbc:Driver={Microsoft Access Driver (*.mdb, *.accdb)};DBQ=.\hello.accdb", 
               "", "", "sun.jdbc.odbc.JdbcOdbcDriver")
            sql.eachRow("SELECT 'Hello, JDBC Type1 World!' AS Message"){
                println it.Message
            }
        }
    }

    ソースコード(Groovy + JDBC Type1 + ODBC + SQL Server)

    import groovy.sql.Sql
    class Hello {
        static void main(args) {
            Sql sql = Sql.newInstance("jdbc:odbc:Driver={SQL Server};SERVER=(local);DATABASE=master", 
               "sa", "P@ssword", "sun.jdbc.odbc.JdbcOdbcDriver")
            sql.eachRow("SELECT 'Hello, JDBC Type1 World!' AS Message"){
                println it.Message
            }
        }
    }

    ソースコード(Groovy + JDBC Type1 + ODBC + Oracle)

    import groovy.sql.Sql
    class Hello {
        static void main(args) {
            Sql sql = Sql.newInstance("jdbc:odbc:Driver={Oracle in OraDb11g_home1};DBQ=ORCL", 
               "scott", "tiger", "sun.jdbc.odbc.JdbcOdbcDriver")
            sql.eachRow("SELECT 'Hello, JDBC Type1 World!' AS Message FROM DUAL"){
                println it.Message
            }
        }
    }

    実行方法

    C:¥> groovy Hello.groovy

    実行結果

    Hello, JDBC Type1 World!
  3. Hello, JDBC Type4 World!

    Posted on 4月 6th, 2012 by cx20

    JDBC Type4

    JDBC(Java Database Connectivity)は、Java 用のデータベース接続 API である。実装方法によりType1~4の4つのタイプが存在する。
    Type4 は DBMS のクライアントライブラリを使用しない Pure Java の DBMS ドライバである。

    ソースコード(Java + JDBC Type4 + SQL Server)

    import java.sql.*;
     
    class Hello {
        public static void main( String[] args ) throws Exception {
            Class.forName ("com.microsoft.sqlserver.jdbc.SQLServerDriver");
            Connection conn = DriverManager.getConnection("jdbc:sqlserver://;serverName=localhost", "sa", "P@ssW0rd");
            Statement stmt = conn.createStatement();
            ResultSet rs = stmt.executeQuery("SELECT 'Hello, JDBC Type4 World!' AS Message");
            while ( rs.next() ) {
                 System.out.println( rs.getString(1) );
            }
            rs.close();
            stmt.close();
            conn.close();
        }
    }

    コンパイル&実行方法(Java + JDBC Type4 + SQL Server)

    C:¥> javac Hello.java
    C:¥> java -cp "sqljdbc4.jar;." Hello

    ソースコード(Java + JDBC Type4 + Oracle)

    import java.sql.*;
     
    class Hello {
        public static void main( String[] args ) throws Exception {
            Class.forName ("oracle.jdbc.driver.OracleDriver");
            Connection conn = DriverManager.getConnection("jdbc:oracle:thin:@localhost:1521:orcl", "scott", "tiger");
            Statement stmt = conn.createStatement();
            ResultSet rs = stmt.executeQuery("SELECT 'Hello, JDBC Type4 World!' AS Message FROM DUAL");
            while ( rs.next() ) {
                 System.out.println( rs.getString(1) );
            }
            rs.close();
            stmt.close();
            conn.close();
        }
    }

    コンパイル&実行方法(Java + JDBC Type4 + Oracle)

    C:¥> javac Hello.java
    C:¥> java -cp "ojdbc6.jar;." Hello

    ソースコード(Java + JDBC Type4 + MySQL)

    import java.sql.*;
     
    class Hello {
        public static void main( String[] args ) throws Exception {
            Class.forName ("com.mysql.jdbc.Driver");
            Connection conn = DriverManager.getConnection("jdbc:mysql://localhost:3306", "root", "P@ssW0rd");
            Statement stmt = conn.createStatement();
            ResultSet rs = stmt.executeQuery("SELECT 'Hello, JDBC Type4 World!' AS Message");
            while ( rs.next() ) {
                 System.out.println( rs.getString(1) );
            }
            rs.close();
            stmt.close();
            conn.close();
        }
    }

    コンパイル&実行方法(Java + JDBC Type4 + MySQL)

    C:¥> javac Hello.java
    C:¥> java -cp "mysql-connector-java-5.1.22-bin.jar;." Hello

    実行結果

    Hello, JDBC Type4 World!
  4. Hello, JDBC Type2 World!

    Posted on 4月 5th, 2012 by cx20

    JDBC Type2

    JDBC(Java Database Connectivity)は、Java 用のデータベース接続 API である。実装方法によりType1~4の4つのタイプが存在する。
    Type2 は JDBC と DBMS クライアントの API をマップさせたブリッジドライバである。
    例えば、Oracle であればクライアントライブラリとして OCI が使用される。

    ソースコード(Java + JDBC Type2 + Oracle)

    import java.sql.*;
     
    class Hello {
        public static void main( String[] args ) throws Exception {
            Class.forName("oracle.jdbc.driver.OracleDriver");
            Connection conn = DriverManager.getConnection("jdbc:oracle:oci:@orcl", "scott", "tiger");
            Statement stmt = conn.createStatement();
            ResultSet rs = stmt.executeQuery("SELECT 'Hello, JDBC Type2 World!' AS Message FROM DUAL");
            while ( rs.next() ) {
                System.out.println( rs.getString(1) );
            }
            rs.close();
            stmt.close();
            conn.close();
        }
    }

    コンパイル&実行方法

    C:¥> javac Hello.java
    C:¥> java -cp "ojdbc6.jar;." Hello

    実行結果

    Hello, JDBC Type2 World!
  5. Hello, JDBC Type1 World!

    Posted on 4月 4th, 2012 by cx20

    JDBC Type1

    JDBC(Java Database Connectivity)は、Java 用のデータベース接続 API である。実装方法によりType1~4の4つのタイプが存在する。
    Type1 は JDBC と ODBC の API をマップさせたブリッジドライバである。

    ソースコード(Java + JDBC Type1 + ODBC + Jet データベース)

    import java.sql.*;
    import sun.jdbc.odbc.*;
     
    class Hello
    {
        public static void main( String[] args ) throws Exception {
            Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
            // ODBC DSN を使用したケース
            Connection conn = DriverManager.getConnection("jdbc:odbc:HELLODSN", "", "");
            // ODBC 接続文字列を使用したケース
            //Connection conn = DriverManager.getConnection("jdbc:odbc:Driver={Microsoft Access Driver (*.mdb)};DBQ=.\hello.mdb", "", "");
            Statement stmt = conn.createStatement();
            ResultSet rs = stmt.executeQuery("SELECT 'Hello, JDBC Type1 World!' AS Message");
            while ( rs.next() ) {
                System.out.println( rs.getString(1) );
            }
            rs.close();
            stmt.close();
            conn.close();
        }
    }

    ソースコード(Java + JDBC Type1 + ODBC + ACE データベース)

    import java.sql.*;
    import sun.jdbc.odbc.*;
     
    class Hello
    {
        public static void main( String[] args ) throws Exception {
            Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
            // ODBC DSN を使用したケース
            Connection conn = DriverManager.getConnection("jdbc:odbc:HELLODSN", "", "");
            // ODBC 接続文字列を使用したケース
            //Connection conn = DriverManager.getConnection("jdbc:odbc:Driver={Microsoft Access Driver (*.mdb, *.accdb)};DBQ=.\hello.accdb", "", "");
            Statement stmt = conn.createStatement();
            ResultSet rs = stmt.executeQuery("SELECT 'Hello, JDBC Type1 World!' AS Message");
            while ( rs.next() ) {
                System.out.println( rs.getString(1) );
            }
            rs.close();
            stmt.close();
            conn.close();
        }
    }

    ソースコード(Java + JDBC Type1 + ODBC + SQL Server)

    import java.sql.*;
    import sun.jdbc.odbc.*;
     
    class Hello
    {
        public static void main( String[] args ) throws Exception {
            Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
            // ODBC DSN を使用したケース
            Connection conn = DriverManager.getConnection("jdbc:odbc:HELLODSN", "sa", "P@ssW0rd");
            // ODBC 接続文字列を使用したケース
            //Connection conn = DriverManager.getConnection("jdbc:odbc:Driver={SQL Server};SERVER=(local)", "sa", "P@ssW0rd");
            Statement stmt = conn.createStatement();
            ResultSet rs = stmt.executeQuery("SELECT 'Hello, JDBC Type1 World!' AS Message");
            while ( rs.next() ) {
                System.out.println( rs.getString(1) );
            }
            rs.close();
            stmt.close();
            conn.close();
        }
    }

    ソースコード(Java + JDBC Type1 + ODBC + Oracle)

    import java.sql.*;
    import sun.jdbc.odbc.*;
     
    class Hello
    {
        public static void main( String[] args ) throws Exception {
            Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
            // ODBC DSN を使用したケース
            Connection conn = DriverManager.getConnection("jdbc:odbc:HELLODSN", "scott", "tiger");
            // ODBC 接続文字列を使用したケース1(MS 製 ODBC ドライバ)
            //Connection conn = DriverManager.getConnection("jdbc:odbc:Driver={Microsoft ODBC for Oracle};Data Source=ORCL", "scott", "tiger");
            // ODBC 接続文字列を使用したケース2(Oracle 製 ODBC ドライバ)
            //Connection conn = DriverManager.getConnection("jdbc:odbc:Driver={Oracle in OraDb11g_home1};DBQ=ORCL", "scott", "tiger");
            Statement stmt = conn.createStatement();
            ResultSet rs = stmt.executeQuery("SELECT 'Hello, JDBC Type1 World!' AS Message FROM DUAL");
            while ( rs.next() ) {
                System.out.println( rs.getString(1) );
            }
            rs.close();
            stmt.close();
            conn.close();
        }
    }

    ソースコード(Java + JDBC Type1 + ODBC + MySQL)

    import java.sql.*;
    import sun.jdbc.odbc.*;
     
    class Hello
    {
        public static void main( String[] args ) throws Exception {
            Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
            // ODBC DSN を使用したケース
            Connection conn = DriverManager.getConnection("jdbc:odbc:HELLODSN", "root", "P@ssW0rd");
            // ODBC 接続文字列を使用したケース
            //Connection conn = DriverManager.getConnection("jdbc:odbc:Driver={MySQL ODBC 5.1 Driver};Server=localhost", "root", "P@ssW0rd");
            Statement stmt = conn.createStatement();
            ResultSet rs = stmt.executeQuery("SELECT 'Hello, JDBC Type1 World!' AS Message");
            while ( rs.next() ) {
                System.out.println( rs.getString(1) );
            }
            rs.close();
            stmt.close();
            conn.close();
        }
    }

    コンパイル&実行方法

    C:¥> javac Hello.java
    C:¥> java Hello

    実行結果

    Hello, JDBC Type1 World!