JavaでODBC接続について

JDBC-ODBCブリッジ・ドライバ(sun.jdbc.odbc.JdbcOdbcDriverクラス)は、JDBC(= Java Database Connectivity)とOBC(= Open Database Connectivity)をつなぐドライバーです。

JavaでODBC接続のサンプルソース

/** JavaでODBC接続 */
import java.io.*;
import java.sql.*;

public class Sample {
	static public void main(String[] args) {
	//dbには、データソース名を設定する
		String url = "jdbc:odbc:db";
		Connection con;
	//変数初期化
		String readstr ="";
		String[] SQL = new String [2];
		int cnt = 0;
		int i;
		String[][] s = new String [1000][2];

	//SQLファイル読み込み
		try {
			FileReader fr = new FileReader("c:\\sql\\sql.txt");
			BufferedReader br = new BufferedReader(fr);
			readstr =br.readLine();
			SQL[0] = readstr;
			readstr =br.readLine();
			SQL[1] = readstr;
			fr.close();
		}catch (Exception e) {
			System.out.println("Exception :" + e);
		}

		//DBに接続用JDBC-ODBCドライバー取得
		try {
			Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");

		} catch(java.lang.ClassNotFoundException e) {
			System.err.print("ClassNotFoundException: "); 
			System.err.println(e.getMessage());
		}

		//DBに接続
		try {
			con = DriverManager.getConnection(url, "", "");
			// Create a Statement
			Statement stmt = con.createStatement ();

			ResultSet rs = stmt.executeQuery (SQL[1]);
			cnt = 0;
			while (rs.next ()){
				s[cnt][0] = rs.getString (1);
				s[cnt][1] = rs.getString (2);
				cnt = cnt + 1;
			}
			SQL[0] = "insert into tb2( ID, NAME ) values(999,'" + s[cnt-1] + "');";
			stmt.executeUpdate(SQL[0]);
			stmt.close();
			con.close();
		} catch(SQLException ex) {
			System.err.println("SQLException: " + ex.getMessage());
		}

		try {
			//ファイルに結果を出力
			FileWriter fw = new FileWriter("c:\\log\\log.txt");
			PrintWriter pfw = new PrintWriter(fw);
			for(i=0;i<cnt;i++){
				pfw.println(s[i][0] + ":"+ s[i][1]);
			}
			pfw.close();
		}catch (Exception e) {
			System.out.println("Exception :" + e);
		}
	}
}

inserted by FC2 system