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もよろしく。

    最新記事

    最新コメント

    最新トラックバック

    月別アーカイブ

    カテゴリ

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

    ブログ用カウンター

    検索フォーム

    RSSリンクの表示

    リンク

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

    Powered By FC2ブログ

    今すぐブログを作ろう!

    Powered By FC2ブログ