SQLite コンバーター
Microsoft AccessなどでSQLiteの編集をするたのツールです。
MDBに変換もできますし、ODBCのDSNだけ作ったりもできます。
Windowsに標準で搭載されている「ODBCアドミニストレータ」はお世辞にも使いやすいと私はよう言いません。私の見る限り、初心者や中級者でも絶対引いてたので、もっと簡単SQLiteのデータベースを編集できる事を考えて作りました。



使い方
対象SQLITEデータベースをこのフォームにドラッグ&ドロップで置くだけです。
MDBに完全変換はそれで終わりです。DSN作成をして利用する場合は、xxxx.dsnというファイルdsnが自動的に同じフォルダに出来上がります。
それをAccess等のアプリケーションから読み込んで使用します。


ダウンロード
本ツールはGIS Matildaのライセンス基準と同じです(matilda.licが必要ですのでmatildaと同じフォルダに置いて起動してください)ここからダウンロードして、解凍後、実行するだけです。ややこしいインストール作業は不要です。自動バージョンアップにも対応しています。


実行サンプル(DSNを利用する場合)
一例としてAccessでSQLiteテーブルにリンクして編集する方法を載せておきます。

※↑空のmdbを自動で作った場合はこの作業は不要


一度、リンクテーブルができてしまえば、次回からはAccessデータベースだけを開くだけで普通に使えます。
また、使ったDSNファイルは削除しても大丈夫です。

うまく行かない時の対処方 その1
AccessからODBCデータベースの取り込み時にエラーとなる場合は、SQLiteのドライバがインストールされていない可能性があります。
その場合はサイトからダウンロードしてインストールしてください。SQLiteは外部のDLLを使う必要があります。ダウンロードするものは、64ビットのWindowsを使ってても32bit版でいいと思います。


ダウンロードしてインストールしたら、Windows標準でインストールされているODBCアドミニストレータのドライバ一覧の中に「SQLite3 ODBC Driver」が入っているのが確認できます。

これで、ツールによって作成されたDSNファイルをAccessから使う事ができます。


まれに、このODBCドライバのインストール中にエラーが出たという報告を聞いたことがありますが、原因としてはC:¥Windows¥System32への書き込み権限がないということでインストールが終了することがあるそうです。その場合は、ちょっと怖いかもですがSystem32の書き込み権限を一旦可能にしてからインストールするほかなさそうです。

うまく行かない時の対処方 その2
AccessからODBCデータベースの取り込み時はうまく行ったけど、テーブルを表示したら内容が全て「#Deleted」という字に置き換わってしまっている時。


これはSQLiteのテーブル側が原因がありまして、テーブル構造でプライマリキーが設定されていないことが原因です。
テーブルを構築するときに例えば、必要でなくても「ID」みたいなフィールドを1つ作ってデータ側を「INTEGER」にして「AUTOINCREMENT」に設定して保存します。それをODBC接続すると正常に動作されます。



その他

ご意見やご感想ご要望はこちらまでお願いします。