Accessデータベースに接続して作業するプログラムをたくさん持っています。毎朝その日の予定をメールでスマホに送ったり...その他いろいろです。Accessの組み合わせはなくてはならない物になっています。広告JDBC-ODBCブリッジでJavaとAccessを接続していましたが、Java8をインストールしたところ、突然使えなくなってしまいました。JDBC-ODBCブリッジ、Java8ではサポート打ち切りになっていたのですね。動かなくなって初めて気づきました。今回時間が出来たので、UCanAccessを使って接続をしてみることにしました。UCanAccessはODBCを使用せずに接続できる、純粋なJavaのJDBCドライバです。UCanAccessのダウンロード、インストールまずはPCにインストールします。こちらからダウンロードしました。解凍すると下記5つのjarファイルが出来るので、ucanaccess-2.0.9.5.jarcommons-lang-2.6.jarcommons-logging-1.1.1.jarhsqldb.jarjackcess-2.1.0.jarとりあえず接続してみるD:work\dbs\にtest.assdbというAccessデータベースを作り、その中にtestというテーブルを作り、その中にsiken1というフィールドを作って下記コード実行。普通に動いてくれました。なんだか簡単で拍子抜けしました。){System.out.println("err");}}}UCanAccess乗り換え覚え書き結局完全移行するのが面倒で、最近までODBSCを使い続けていたのですが、PCを買い換えてとうとう動かなくなってしまい、全面的に乗り換えることにしました。引っかかるところがあったので、自分用も兼ねて覚え書きにしておきます。ODBCは32ビットアプリと64ビットアプリの間では利用できない確認したわけではないけど、動かない。Windowsを64に買い換えて、Access32を使用したら、全く動きませんでした。Java8ではODBSC-JDBCブリッジを利用できない自分で作ったアプリ、7までしか動かないデータベースを利用するものと、8からでしか動かないJavaFXを利用するものがあって、開発するアプリごとにEclipseのVM設定を切り替える必要があり、大変でした。UCanAccessに乗り換えたので、今後はJava8だけで開発できます。UCanAccessを最新版に差し替えるあたりまえだけど、忘れてました。エラーコメント、最新おき換えたら詳しくなっていて、それをもとにバグ取りができました。SQL作成ODBSC-JDBCブリッジではACCESSのクエリが使えましたが、UCanAccessではほぼ使えないので、クエリの代わりにSQL文を作成して渡しました。具体的にはクエリをデザインビューで開き、さらにSQLビューで表示させて出てきたSQL文を書き換えて使いました。そのままでは通らないので、下記変更をします。「!」→「.」に差し替え。[table].[time2])こんな風に書き換えて通しました。Yes/No型データの受け取り1/0で受け取っていたけど、UCanAccessではTRUE/FALSEになっていました。文字列は「'」で囲む。Itoこのサイトの文章・写真の無断転載を禁じます。