Hello, JDBC Type1(Oxygene) World!

Posted on 4月 16th, 2013 by cx20

JDBC Type1

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

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

namespace hello;
 
interface
uses
    java.sql.*,
    sun.jdbc.odbc.*;
 
type
    Hello = class
public
    class method Main(args: array of String);
end;
 
implementation
 
class method Hello.Main(args: array of String);
var
    conn: Connection;
    stmt: Statement;
    rs: ResultSet;
begin
    java.lang.Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
 
    conn := DriverManager.getConnection("jdbc:odbc:Driver={Microsoft Access Driver (*.mdb)};DBQ=.\\hello.mdb", "", "");
    stmt := conn.createStatement();
    rs := stmt.executeQuery("SELECT 'Hello, JDBC Type1 World!' AS Message");
    while rs.next() do begin
        System.out.println( rs.getString(1) );
    end;
    rs.close();
    stmt.Close();
    conn.Close();
end;
 
end.

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

namespace hello;
 
interface
uses
    java.sql.*,
    sun.jdbc.odbc.*;
 
type
    Hello = class
public
    class method Main(args: array of String);
end;
 
implementation
 
class method Hello.Main(args: array of String);
var
    conn: Connection;
    stmt: Statement;
    rs: ResultSet;
begin
    java.lang.Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
 
    conn := DriverManager.getConnection("jdbc:odbc:Driver={Microsoft Access Driver (*.mdb, *.accdb)};DBQ=.\\hello.accdb", "", "");
    stmt := conn.createStatement();
    rs := stmt.executeQuery("SELECT 'Hello, JDBC Type1 World!' AS Message");
    while rs.next() do begin
        System.out.println( rs.getString(1) );
    end;
    rs.close();
    stmt.Close();
    conn.Close();
end;
 
end.

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

namespace hello;
 
interface
uses
    java.sql.*,
    sun.jdbc.odbc.*;
 
type
    Hello = class
public
    class method Main(args: array of String);
end;
 
implementation
 
class method Hello.Main(args: array of String);
var
    conn: Connection;
    stmt: Statement;
    rs: ResultSet;
begin
    java.lang.Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
 
    conn := DriverManager.getConnection("jdbc:odbc:Driver={SQL Server};SERVER=(local)", "sa", "P@ssW0rd");
    stmt := conn.createStatement();
    rs := stmt.executeQuery("SELECT 'Hello, JDBC Type1 World!' AS Message");
    while rs.next() do begin
        System.out.println( rs.getString(1) );
    end;
    rs.close();
    stmt.Close();
    conn.Close();
end;
 
end.

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

namespace hello;
 
interface
uses
    java.sql.*,
    sun.jdbc.odbc.*;
 
type
    Hello = class
public
    class method Main(args: array of String);
end;
 
implementation
 
class method Hello.Main(args: array of String);
var
    conn: Connection;
    stmt: Statement;
    rs: ResultSet;
begin
    java.lang.Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
 
    conn := DriverManager.getConnection("jdbc:odbc:Driver={Oracle in OraDb11g_home1};DBQ=ORCL", "scott", "tiger");
    stmt := conn.createStatement();
    rs := stmt.executeQuery("SELECT 'Hello, JDBC Type1 World!' AS Message FROM DUAL");
    while rs.next() do begin
        System.out.println( rs.getString(1) );
    end;
    rs.close();
    stmt.Close();
    conn.Close();
end;
 
end.

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

namespace hello;
 
interface
uses
    java.sql.*,
    sun.jdbc.odbc.*;
 
type
    Hello = class
public
    class method Main(args: array of String);
end;
 
implementation
 
class method Hello.Main(args: array of String);
var
    conn: Connection;
    stmt: Statement;
    rs: ResultSet;
begin
    java.lang.Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
 
    conn := DriverManager.getConnection("jdbc:odbc:Driver={MySQL ODBC 5.1 Driver};Server=localhost", "root", "P@ssW0rd");
    stmt := conn.createStatement();
    rs := stmt.executeQuery("SELECT 'Hello, JDBC Type1 World!' AS Message");
    while rs.next() do begin
        System.out.println( rs.getString(1) );
    end;
    rs.close();
    stmt.Close();
    conn.Close();
end;
 
end.

実行方法

C:¥> oxygene Hello.pas -mode:Java
C:¥> java -jar hello.jar

実行結果

Hello, JDBC Type1 World!

Tags: ,

Categories: JDBC, JDBC Type1, Oxygene

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

WP-SpamFree by Pole Position Marketing