Archive for 10月 6th, 2012

  1. Hello, JDBC Type4(Scala) World!

    Posted on 10月 6th, 2012 by cx20

    JDBC Type4

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

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

    import java.sql.DriverManager
     
    object Hello {
        def main(args : Array[String]) {
            Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver").newInstance();
            var con = DriverManager.getConnection("jdbc:sqlserver://;serverName=localhost", "sa", "P@ssW0rd");
            var stmt = con.createStatement()
            var rs = stmt.executeQuery("SELECT 'Hello, JDBC Type4 World' AS Message")
            while (rs.next()){
                println(rs.getString(1))
            }
            rs.close()
            stmt.close()
            con.close()
        }
    }

    実行方法(Scala + JDBC Type4 + SQL Server)

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

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

    import java.sql.DriverManager
     
    object Hello {
        def main(args : Array[String]) {
            Class.forName("oracle.jdbc.driver.OracleDriver").newInstance();
            var con = DriverManager.getConnection("jdbc:oracle:thin:@localhost:1521:orcl", "scott", "tiger");
            var stmt = con.createStatement()
            var rs = stmt.executeQuery("SELECT 'Hello, JDBC Type4 World' AS Message FROM DUAL")
            while (rs.next()){
                println(rs.getString(1))
            }
            rs.close()
            stmt.close()
            con.close()
        }
    }

    実行方法(Scala + JDBC Type4 + Oracle)

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

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

    import java.sql.DriverManager
     
    object Hello {
        def main(args : Array[String]) {
            Class.forName("com.mysql.jdbc.Driver").newInstance();
            var con = DriverManager.getConnection("jdbc:mysql://localhost:3306", "root", "P@ssW0rd");
            var stmt = con.createStatement()
            var rs = stmt.executeQuery("SELECT 'Hello, JDBC Type4 World' AS Message")
            while (rs.next()){
                println(rs.getString(1))
            }
            rs.close()
            stmt.close()
            con.close()
        }
    }

    実行方法(Scala + JDBC Type4 + MySQL)

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

    実行結果

    Hello, JDBC Type4 World!