ENGLISH
Actian/FAQ/ PSQL v12/アップグレードインストール後、PSQL 以外のシステム DSN が動作しなくなりました。なぜでしょうか?

アップグレードインストール後、PSQL 以外のシステム DSN が動作しなくなりました。なぜでしょうか?

PSQL v10 あるいは PSQL v11 をインストールしている環境に PSQL v12 のアップグレードインストールを行うと、他社データベースの ODBC システム DSN 設定のドライバー情報(”Driver”= および “TranslationDLL”= )が全て PSQL のドライバーに書き換わります。
回避策は、PSQL v10 あるいは PSQL v11 をアンインストールしてから PSQL v12 のインストールを行ってください。

 

PSQL v10 あるいは PSQL v11 のアンインストールを行わずに PSQL v12 のインストールを行ってしまった場合、他社データベースの ODBC システム DSN を再設定してください。
再設定ができない場合は、PSQL v12 のインストールログから必要な情報を取得して、次の手順でレジストリを修復してください。

 

インストールログは、%tmp% フォルダーに次のファイル名で作成されます。

PSQL_v12_[Client|Server|WGE]_[x86|x64]_Install.log

  1. インストールログをメモ帳等で開き、「Converting driver from」を検索してください。
  2. 次のような行が見つかります。

    <32bit DSN の場合>

    Action: DSNConversion32 Description: Converting 32-bit HKLM DSN: SOFTWARE¥ODBC¥ODBC.INI¥text Action: ConvertDSN32 Description: Entering function.
    Action: ConvertDSN32 Description: Converting driver from C:¥Windows¥system32¥odbcjt32.dll to C:¥Program Files (x86)¥Actian¥PSQL¥bin¥w3odbcci.dll
    ※3 行目にある from が w3odbcci.dll の場合、PSQL の DSN ですから、そのままにして手順 g に移動します。
     他の DLL の場合、手順 c から手順 e を実行します。


    <64bit DSN の場合>

    Action: DSNConversion64 Description: Converting 64-bit HKLM DSN: SOFTWARE¥ODBC¥ODBC.INI¥Test64bitSQLServerDSN Action: ConvertDSN64 Description: Entering function.
    Action: ConvertDSN64 Description: Converting driver from C:¥Windows¥system32¥SQLSRV32.dll to C:¥Program Files¥Actian¥PSQL¥bin¥odbcci64.dll
    ※3 行目にある from が odbcci64.dll の場合、PSQL の DSN ですから、そのままにして手順 g に移動します。
     他の DLL の場合、手順 c から手順 e を実行します。

  3. レジストリエディタ(regedit.exe)を起動します。
  4. 手順 b の 1 行目に記述されているレジストリエントリを検索します。
    32bit か 64bit かの判断は、1 行目に記述されている Converting の後の記述を参照します。


    <32bit OS で 32bit DSN の場合>

    SOFTWARE¥ODBC¥ODBC.INI¥dsn 名
    ※インストールログの記録のまま(前述の例では、SOFTWARE¥ODBC¥ODBC.INI¥text)


    <64bit OS で 32bit DSN の場合>

    SOFTWARE¥Wow6432Node¥ODBC¥ODBC.INI¥dsn 名
    ※インストールログに記録されている「SOFTWARE¥」を「SOFTWARE¥Wow6432Node¥」に置き換えます。
     (前述の例では、SOFTWARE¥Wow6432Node¥ODBC¥ODBC.INI¥text)


    <64bit DSN の場合>

    SOFTWARE¥ODBC¥ODBC.INI¥dsn 名
    ※インストールログの記録のまま(前述の例では、SOFTWARE¥ODBC¥ODBC.INI¥Test64bitSQLServerDSN)

  5. 手順 b の 3 行目の “Driver”= に記述されているドライバーファイル名を、from ~ to の間に記録されているファイル名に書き戻します。

    <変更前>

    [HKEY_LOCAL_MACHINE¥SOFTWARE¥Wow6432Node¥ODBC¥ODBC.INI¥text]
    “Driver”=”C:¥¥Windows¥¥system32¥¥odbcjt32.dll”
    “DefaultDir”=”C:¥¥TEST¥¥ODBC”
    “DriverId”=dword:0000001b
    “FIL”=”text;”
    “SafeTransactions”=dword:00000000
    “UID”=””


    <変更後>

    [HKEY_LOCAL_MACHINE¥SOFTWARE¥Wow6432Node¥ODBC¥ODBC.INI¥text]
    “Driver”=”C:¥¥Program Files (x86)¥¥Actian¥¥PSQL¥¥bin¥¥w3odbcci.dll”
    “DefaultDir”=”C:¥¥TEST¥¥ODBC”
    “DriverId”=dword:0000001b
    “FIL”=”text;”
    “SafeTransactions”=dword:00000000
    “UID”=””

  6. 手順 b で「Converting translator」行が存在する場合、レジストリの “TranslationDLL”= に記述されているトランスレーター DLL の名称も、from ~ to の間に記録されているファイル名に書き戻します。
  7. 「Converting driver from」が見つからなくなるまで、手順 a から手順 f を繰り返します。

Windows 環境の全て(Server、Workgroup、Client、Vx Server)の製品が対象です。

 

この問題は、次の PSQL v12 SP1 のサービスパックで修正されています。

Contactお問い合わせ

お気軽にお問い合わせください。

    必須会社名

    個人のお客様は「個人」と入力してください。

    必須お名前
    必須メールアドレス
    必須メールアドレス(確認)
    必須ライセンス ありなし
    ダウンロード目的