SQLの窓

2014年12月10日


バッチ処理サンプル : Java sun.jdbc.odbc.JdbcOdbcDriver 用 各種 RDBMS 接続文字列

関連する記事

Java 8 で、sun.jdbc.odbc.JdbcOdbcDriver を使う手順



このサンプルは、Java をバッチでビルドして実行するサンプルです( SDK さえあれば実行できます )
ソースコードは SHIFT_JIS です。UTF-8 でビルドしたい場合は、UTF-8N で保存しなおして javac のパラメータに -encoding utf-8 を追加して下さい。ソースコード内のJDBC-ODBC ブリッジでの日本語設定用プロパティが必要がどうかは環境によって異なると思いますが、一応設定して動作しています。同様の機能が、RDBMS 側で用意されている場合(MySQL等)もあるので注意して下さい。
import java.util.*;
import java.sql.*;

public class Main {

	// ***************************
	// エントリポイント
	// ***************************
	public static void main(String[] args) {
		Main thisClass = new Main();
	}

	// ***************************
	// コンストラクタ
	// ***************************
	public Main() {
		super();
		my_acton();
	}

	// ***************************
	// 初期処理
	// ***************************
	private void my_acton() {

		// 接続用
		Connection con = null;
		// クエリー(SQL)用
		Statement stmt = null;
		// 結果セット用
		ResultSet rset = null;

		// 表示ツール
		MyTool out = new MyTool(">>>");
		out.println("処理開始");

		// 接続文字列
		String connectionString = "";

		// ***************************
		// ODBC 接続文字列
		// ***************************
		connectionString =
			"Provider=MSDASQL" +
			";Driver={Microsoft Access Driver (*.mdb, *.accdb)}" +
			";Dbq=" + System.getProperty("user.dir") + "\\販売管理B.accdb"+
			";";

		// 日本語設定用プロパティ
		Properties prop = new Properties();
		prop.put("charSet", "MS932");
		out.println(connectionString);

		try {
			// 接続
			con = DriverManager.getConnection("jdbc:odbc:"+connectionString, prop);
			// ステートメント作成
			stmt = con.createStatement();
			// SQL より レコードセット取得
			rset = stmt.executeQuery ( "select * from 社員マスタ" );

			// 一覧表示
			while( rset.next() ) {
				out.println( rset.getString( "氏名" ) );
			}

			// 後処理
			rset.close();
			stmt.close();
			con.close();

		}
		catch (Exception ex) {
			ex.printStackTrace();
			return;
		}

		out.println("処理終了");

	}

	// ***************************
	// 内部用クラス
	// ***************************
	private class MyTool {

		private String mark = null;

		MyTool(String pm) {
			mark = pm;
		}

		public void println(String str) {
			System.out.println( this.mark + str );
		}

	}

}

以下は接続文字列のサンプルです。Oracle は 純正ドライバを使用したほうが無難です。
// *********************************************
// Java sun.jdbc.odbc.JdbcOdbcDriver 用
// 各種 RDBMS 接続文字列
// *********************************************
String connectionString = "";

// *********************************************
// MDB
// *********************************************
connectionString =
	"Provider=MSDASQL" +
	";Driver={Microsoft Access Driver (*.mdb, *.accdb)}" +
	";Dbq=" + System.getProperty("user.dir") + "\\販売管理B.mdb"+
	";";

// *********************************************
// MySQL
// *********************************************
connectionString =
	"Provider=MSDASQL" +
	";Driver={MySQL ODBC 5.3 Unicode Driver}" +
	";SERVER=localhost" + 
	";DATABASE=lightbox" +
	";UID=root" +
	";PWD=password" +
	";Charset=sjis" +
	";";

// *********************************************
// Oracle( 純正 )
// *********************************************
connectionString =
	"Provider=MSDASQL" +
	";Driver={Oracle in OraClient11g_home1}" +
	";DBQ=vpc-019/ORCL" + 
	";UID=LIGHTBOX" +
	";PWD=LIGHTBOX" +
	";";

// *********************************************
// SQLServer
// SERVER は別名
// *********************************************
connectionString =
	"Provider=MSDASQL" +
	";Driver={SQL Native Client}" +
	";SERVER=lightbox" +
	";DATABASE=lightbox" +
	";UID=sa" +
	";PWD=password" +
	";";

connectionString =
	"Provider=MSDASQL" +
	";Driver={SQL Server}" +
	";SERVER=lightbox" +
	";DATABASE=lightbox" +
	";UID=sa" +
	";PWD=password" +
	";";



関連する記事

ODBC ドライバの列挙

Eclipse + WindowBuilder : JDBC と ODBC を使った、オールマイティなデータベース接続サンプル( MySQL / SQLServer / Oracle / Postgres / MS Access)

javamail でメール送信と、付属のバッチビルド用のスクリプトの解説



posted by lightbox at 2014-12-10 11:00 | java : データベース | このブログの読者になる | 更新情報をチェックする
バッチ処理

Microsoft Office
container 終わり

フリーフォントで簡単ロゴ作成
フリーフォントでボタン素材作成
フリーフォントで吹き出し画像作成
フリーフォントではんこ画像作成
ほぼ自由に利用できるフリーフォント
フリーフォントの書体見本とサンプル
画像を大きく見る為のウインドウを開くボタンの作成

Android SDK ポケットリファレンス
改訂版 Webデザイナーのための jQuery入門
今すぐ使えるかんたん ホームページ HTML&CSS入門
CSS ドロップシャドウの参考デモ
PHP正規表現チェッカー
Google Hosted Libraries
cdnjs
BUTTONS (CSS でボタン)
イラストAC
ぱくたそ
写真素材 足成
フリーフォント一覧
utf8 文字ツール
右サイド 終わり
base 終わり