2014.11.18 システム
javaでMS Accessを使う
システムの上松です。
たま~にですが、DBサーバにつながらない状態で仕組みのデモをしないといけないことがありますよね。
こういった場合、MySQLなり、PostgreSQLであればローカルにセットアップされていることもあるでしょう。
しかし、OracleやSQL Serverといった重いデータベースを
複数ローカル環境にセットアップするのはできれば遠慮したいものです。
こんなときは、必要なテーブルをAccessに取り込んでおけば、ちょっとしたデモなりテストでもやりやすいものです。
手順は簡単
1. 各種DBよりデータをAccessに取り込む
2. Java側のコネクションとJDBCを以下のように記述する。
JDBCドライバ:sun.jdbc.odbc.JdbcOdbcDriver
接続指定:jdbc:odbc:DRIVER=Microsoft Access Driver (*.mdb, *.accdb);DBQ=C:/mdb_souko/hogehoge_data.accdb
※DBQ=以下はmbd・accdbファイルのパスです。
これでAccess上のテーブルからデータを取ることができます。
(Accessのドライバはマイクロソフトのサイトでダウンロードできます。)
ただし、↑のままだとデータベースごとにSQLの方言があるので、何の手当てもしないとSQL実行エラーでコケます。
ある程度までなら、Access側でクエリー化して対処することもできるので、
ちょっと別DBのデータが必要、といった場合は便利に使えるかもしれません。