FC2ブログ

    nEST's SPACE-Blog

    コンピュータ、旅行などがテーマの日記帳です

    バッチファイルでのODBC設定まとめ

     
    バッチファイルでODBCの設定を行う(兼64bitOSで32bit版コマンドをバッチで実行する)ための管理人的まとめ。
    ODBCの設定を都度GUIでやるのはダルいので、バッチでパパッと済ませたい。



    64bitOSで下記記述のバッチファイルを実行すると「システムDSN」「64bit版ODBC」で登録される。
    コマンドプロンプト自体が64bit版で起動している、且つバッチ本文で"odbcconf"と記述したので、64bit版ODBC(C:\WINDOWS\system32\odbcconf.exe)が起動されるため。
    cd /d %~dp0
    set WORK_DIR=%~dp0
    odbcconf /Ld %WORK_DIR%log_test.txt /A {CONFIGSYSDSN "Microsoft Access Driver (*.mdb, *.accdb)" "DSN=ODBC_TEST;DBQ=D:\odbc_test.mdb"}

    20150713_ODBC1.png


    64bit版ODBCの登録であれば、ここまでで完了。

    しかし今回は「64bitOSで32bit版ODBC」を登録したいので、バッチファイルを2つ用意して「64bitOSのバッチファイルで32bit版コマンドプロンプトを起動」「32bit版コマンドプロンプトから32bit版ODBCを編集」という手順を踏んだ。

    ●ODBC登録バッチを起動するためのバッチ:run_odbc_test.batを別途作成、下記の記述を行う。
    cd /d %~dp0
    set WORK_DIR=%~dp0

    c:\windows\syswow64\cmd.exe /C %WORK_DIR%odbc_test.bat
    exit

    ●ODBC登録バッチ:odbc_test.batを32bit向けに記述。
    odbcconf /Ld %WORK_DIR%log_test.txt /A {CONFIGSYSDSN "Microsoft Access Driver (*.mdb)" "DSN=ODBC_TEST;DBQ=D:\odbc_test.mdb"}

    ●後はrun_odbc_test.batを「管理者として実行」する事で目的の内容を32bit版ODBCで登録することができた。
    20150713_ODBC2.png



    ■その他に発生したエラーと対処
    ●バッチファイルを実行した際「レジストリでコンポーネントが見つかりません。 with error code -2147467259」と表示される

    [CONFIGSYSDSN]の箇所で指定する名称が誤っているかも。レジストリエディタの[HKEY_LOCAL_MACHINE\SOFTWARE\ODBC\ODBCINST.INI]以下から正しい名称をコピーすると楽。
    64bit時は["Microsoft Access Driver (*.mdb, *.accdb)"]、32bit時は["Microsoft Access Driver (*.mdb)"]を指定する必要があった。


    ●バッチファイルを実行した際「レジストリに書き込めません。 with error code -2147467259」と表示される

    バッチファイルまたはコマンドプロンプトを「管理者として実行」する事で解消されるか試してみる。


    ■32/64bit ODBCの違い
    物によっては動作不良を起こすため、64bitOSでODBCの設定を行う際は32/64bitどちらのODBCを使うか気を配る必要がある。
    ODBCのプログラムの場所は下記の通り。
    ・ODBC(32bit)→C:\WINDOWS\syswow64\odbcad32.exe
    ・ODBC(64bit)→C:\WINDOWS\system32\odbcad32.exe

    Windows8.1の場合、コントロールパネルに32/64bitの両方が表示されているので分かりやすい。

    20150713_ODBC3.png
     
     
     
    関連記事
    スポンサーサイト
    1. 2015/07/13(月) 21:50:46|
    2. Windows
    3. | トラックバック:0
    4. | コメント:0
    <<荒川ロックゲートクルーズへ行ってきた | ホーム | Error: File contains parsing errorsと表示されyumコマンドが使用できない現象の対処方法>>

    コメント

    コメントの投稿


    管理者にだけ表示を許可する

    トラックバック

    トラックバック URL
    http://nestblog.blog.fc2.com/tb.php/106-d54d0700
    この記事にトラックバックする(FC2ブログユーザー)

    プロフィール

    管理人NEST

    Author:管理人NEST
    nEST's SPACEへようこそ。
    書きたい事を適当に書き連ねています。
    HP
    自転車ブログ nEST's SPACE-Bicycleもよろしく。

    最新記事

    最新コメント

    最新トラックバック

    月別アーカイブ

    カテゴリ

    未分類 (1)
    GAME (20)
    雑記 (57)
    PostgreSQL (7)
    Windows (45)
    サイト運営 (6)
    MANGA (1)
    スマートフォン (19)
    Oracle (6)
    健康 (2)
    Linux (21)
    仮想化 (4)
    車 (7)
    自転車旅行 (3)
    自転車パーツ・ウェア (2)
    自転車イベント (5)
    自転車 (15)

    ブログ用カウンター

    検索フォーム

    RSSリンクの表示

    リンク

    このブログをリンクに追加する

    Powered By FC2ブログ

    今すぐブログを作ろう!

    Powered By FC2ブログ