2 スタート・ガイド

この章では、Oracle Database ODBCドライバのインストールと構成に必要な手順について説明します。

Oracle Database ODBCドライバを使用すると、アプリケーションは、Microsoft Open Database Connectivity (ODBC) APIを使用するWindowsクライアントおよびUNIXクライアントからOracle Databaseに接続して、Oracle Databaseへの読取りや書込みを実行できるようになります。

Oracle Database ODBCドライバ配布キットには、ダイナミック・リンク・ライブラリと共有ライブラリ(UNIXプラットフォーム向け)、ヘルプ・ファイル(WindowsおよびUNIXプラットフォーム上)、ライセンスのコピーおよびこの製品の説明が含まれています。ODBC対応アプリケーションを使用するには、Oracle Database ODBCドライバに加え、次のソフトウェアが必要です。

  • Oracleクライアント(完全インストールしたクライアントやOracle Instant Clientなど)

  • Oracle Databaseサーバー

関連項目:

トピック:

2.1 ステップのサマリー

Oracle Database ODBCドライバをインストールおよび構成するステップのサマリーは次のとおりです。

LinuxおよびUNIX

  1. インストールのシステム要件が満たされていることを確認します。

  2. Oracle Instant Client BasicまたはLightパッケージをダウンロードしてインストールします。

  3. unixODBCドライバ・マネージャをダウンロードしてインストールします。

  4. Instant Client ODBCパッケージをダウンロードし、Instant Clientディレクトリに抽出します。

  5. ドライバの共有ライブラリのパスおよびその他の環境変数を構成します。

  6. Oracle Net Configuration Assistant (NETCA)ツールを使用して、Oracleネット・サービス(TNSサービス名)を構成します。

  7. Instant Clientディレクトリからodbc_update_ini.shを実行して、データソースを構成します。

  8. 必要に応じて、ロケールにグローバリゼーション変数を設定します。

Windows

  1. インストールのシステム要件が満たされていることを確認します。

  2. Oracle Instant Client BasicまたはLightパッケージをダウンロードしてインストールします。

  3. Instant Client ODBCパッケージをダウンロードし、Instant Clientディレクトリに抽出します。

  4. Instant Clientディレクトリからodbc_install.exeを実行します。

  5. ドライバの共有ライブラリのパスおよびその他の環境変数を構成します。

  6. Oracle NETCAツールを使用して、Oracleネット・サービス(TNSサービス名)を構成します。

  7. 「ODBC データ ソース アドミニストレーター」を実行して、データソースを構成します。

2.2 インストール

この項では、Oracle Database ODBCドライバのインストールに必要な手順について説明します。

OracleのInstant Client ODBCソフトウェアは、Oracle Database ODBCドライバ(Oracle service for Microsoft Transaction Serverを除く)の完全な機能を簡単なインストール手順で提供するスタンドアロン・パッケージです。

ODBCドライバには、Oracleの標準クライアント/サーバー・バージョンの相互運用性があります(サポート・ドキュメントID 207303.1を参照)。たとえば、Instant Client ODBC 19cは、Oracle Database 11.2以上に接続できます。

トピック:

2.2.1 システム要件

ODBCドライバをインストールする前に、ハードウェア、ターゲット・オペレーティング・システムおよびサーバー・バージョンがODBCドライバと互換性があることを確認します。

トピック:

2.2.1.1 必要なソフトウェア

Oracle Database ODBCドライバは、現在サポートされているWindowsおよびUNIXオペレーティング・システムのバージョン、Oracle Databaseとともに出荷されるOracle Net ClientおよびOracle Universal Installerの最新リリースに対して動作保証されました。

Oracle Database ODBCドライバは、次のバージョンのソフトウェアに対して動作保証されています。

  • Windowsオペレーティング・システムの次のバージョン: Windows Server 2008、Windows Server 2008 R2、Windows 7、Windows 8およびWindows Server 2012

  • UNIXオペレーティング・システムの次のバージョン: Linux X86-64の32ビットと64ビットのポート、AIX5L、Solaris.Sparc64、Solaris X64、HPUX.IA64およびZLinux

  • Oracle Net Client 12.2

  • Oracle Database 12.2とともに出荷されるOracle Universal Installer

2.2.1.2 サーバー・ソフトウェア要件

Oracle Database ODBCドライバを使用するODBC対応アプリケーションのサポートに必要なサーバー・ソフトウェアは、Oracle Database Server 12.2以降です。

2.2.1.3 必要なハードウェア

WindowsおよびUNIXプラットフォーム用のOracle Database ODBCドライバのシステム構成の要件。

Oracle Database ODBCドライバには、「必要なソフトウェア」に記載されている動作保証されたWindowsプラットフォームがサポートするシステム構成が必要です。また、一部のUNIXプラットフォームでは、UNIXプラットフォーム用のOracle Databse ODBCドライバのReadmeに記載されているハードウェア要件が必要です。

2.2.2 Oracle Instant Client ODBCのインストール(LinuxおよびUNIX)

  1. unixODBC.orgからunixODBCドライバ・マネージャをインストールします。ODBCドライバ・マネージャをインストールするには、最初にhttp://www.unixodbc.org/から.tarファイルをダウンロードします。

    関連項目:

    推奨されるunixODBCドライバ・マネージャのバージョンの詳細は、「LinuxおよびUNIXに対する推奨unixODBCドライバ・マネージャ・バージョン」を参照してください

  2. OTNからのパッケージに移動して、Oracle Instant Client BasicまたはBasic Liteをダウンロードします。
  3. Instant Client ODBCパッケージをダウンロードします。
  4. Instant Clientパッケージを目的の場所(/opt/oracle/instantclient_xx_yyなど)に解凍するか、yumを使用してRPMパッケージをLinuxにインストールします。

    関連項目:

    Oracle Instant Clientのインストールの詳細は、Oracle Instant Clientのインストールに関する項を参照してください

  5. ODBCパッケージをInstant Clientフォルダに解凍します(たとえば、BasicパッケージまたはBasic Lightパッケージと同じディレクトリである/opt/oracle/instantclient_xx_yyなど)。または、LinuxでRPMパッケージを使用する場合は、yumを使用してインストールします。
    • インストールした後、環境変数を設定し、ネット・サービスを構成し、odbc_update_ini.sh (Instant Clientディレクトリから)を実行してデータソースを構成します。

      関連項目:

      インストール後の構成ステップの詳細は、「構成」を参照してください。

    • 使用しているロケールに必要なOracleグローバリゼーション変数を設定します。たとえば、Linuxでは、日本語のJA16EUC文字で動作するように、export NLS_LANG=JAPANESE_JAPAN.JA16EUCを設定できます。

    関連項目:

    詳細は、『Oracle Databaseグローバリゼーション・サポート・ガイド』を参照してください。

2.2.2.1 LinuxおよびUNIXに対する推奨unixODBCドライバ・マネージャ・バージョン

Instant Client 23aiの場合:

プラットフォーム unixODBCドライバ・マネージャのバージョン

Linux 32ビット、64ビット

2.3.11

Solaris SPARC64 32ビット、64ビット

2.3.11

Solaris 32ビット、64ビット

2.3.11

AIX 5L 32ビット、64ビット

2.3.11

HP IA64 32ビット、64ビット

2.3.11

z/Linux 31ビット、64ビット

2.3.11

Instant Client 21cの場合:

プラットフォーム unixODBCドライバ・マネージャのバージョン

Linux 32ビット、64ビット

2.3.4

Solaris SPARC64 32ビット、64ビット

2.3.4

Solaris 32ビット、64ビット

2.3.4

AIX 5L 32ビット、64ビット

2.3.4

HP IA64 32ビット、64ビット

2.3.4

z/Linux 31ビット、64ビット

2.3.4

Instant Client 18cおよび19cの場合:

プラットフォーム unixODBCドライバ・マネージャのバージョン

Linux 32ビット、64ビット

2.3.4

Solaris SPARC64 32ビット、64ビット

2.3.4

Solaris 32ビット、64ビット

2.3.4

AIX 5L 32ビット、64ビット

2.3.4

HP IA64 32ビット、64ビット

2.3.4

z/Linux 31ビット、64ビット

2.3.4

Instant Client 12.1および12.2の場合

プラットフォーム unixODBCドライバ・マネージャのバージョン

Linux 32ビット、64ビット

2.3.4

Solaris SPARC64 32ビット、64ビット

2.3.4

Solaris 32ビット、64ビット

2.3.4

AIX 5L 32ビット、64ビット

2.3.4

HP IA64 32ビット、64ビット

2.3.4

z/Linux 31ビット、64ビット

2.3.4

2.2.3 Oracle Instant Client ODBCのインストール(Windows)

  1. https://www.oracle.com/database/technologies/instant-client/microsoft-windows-32-downloads.htmlまたはhttps://www.oracle.com/database/technologies/instant-client/winx64-64-downloads.htmlに移動します
  2. Instant Client BasicまたはBasic Lightパッケージをダウンロードしてインストールします。
  3. Instant Client ODBCパッケージをダウンロードします。
  4. Instant Clientフォルダ(instantclient_xx_yy)を目的の場所に解凍します。例: C:\Users\app\
  5. ODBCパッケージを解凍し、zipファイルの内容(instantclient_xx_yy)をInstant Clientフォルダ(Instant Client BasicまたはBasic Lightパッケージと同じディレクトリ)に配置します。
  6. Instant Clientディレクトリからodbc_install.exeを実行します。

    これにより、ODBCドライバが「ODBC データ ソース」GUIに登録されます。

  7. 日本語サポート付きでインストールするには、コマンドodbc_install.exe JAを実行します。

    インストールした後、環境変数を設定し、ネット・サービスを構成し、データソースを構成します。

    関連項目:

    インストール後の構成ステップの詳細は、「構成」を参照してください。

2.2.4 Oracle Instant Client ODBCパッケージの内容

説明 LinuxおよびUNIX Windows

Oracle Database ODBCドライバ共有ライブラリ

libsqora.so.XX.Y。例: libsqora.so.23.1

sqora32.dll

インストール・ファイル

odbc_update_ini.sh

odbc_install.exe、odbc_uninstall.exe

「Oracle Database ODBC ドライバー構成」ダイアログ・ボックス(GUI)

該当なし

sqoras32.dllsqresus.dllsqresja.dll

ヘルプ・システム

help/

help/

2.2.5 インストールによって作成されるファイル

次の表に、Oracle Database ODBCドライバ・キットによってインストールされるファイルを示します。

表2-1 Oracle Database ODBCドライバ・キットでインストールされるファイル

説明 Windowsインストールのファイル名 UNIXインストールのファイル名

Oracle ODBCデータベース・アクセスDLL

sqora32.dll

libsqora.so.nn.n (nn.nはバージョン番号を表します。たとえば、libsqora.so.23.1)

Oracle Database ODBCドライバ設定DLL

sqoras32.dll

なし

Oracle ODBCリソースDLL

sqresus.dll

なし

日本語用のOracle ODBCリソースDLL

sqresja.dll

なし

Oracle Database ODBCドライバ・メッセージ・ファイル

oraodbcus.msb

oraodbcus.msb

日本語用のOracle Database ODBCドライバ・メッセージ・ファイル

oraodbcja.msb

oraodbcja.msb

Oracle Database ODBCドライバ・リリース・ノート

Oracle Database ODBC Driverリリース・ノート

Oracle Database ODBC Driverリリース・ノート

Oracle Database ODBCドライバInstant Clientリリース・ノート

ODBC_IC_Readme_Win.html

ODBC_IC_Readme_Unix.html

Oracle Database ODBCドライバ・ヘルプ・ファイル

sqora.htm

sqora.htm

日本語用のOracle Database ODBCドライバ・ヘルプ・ファイル

sqora.htm

sqora.htm

Oracle Database ODBCドライバInstant Clientインストール・スクリプト

odbc_install.exe

odbc_update_ini.sh

Oracle Database ODBCドライバInstant Clientアンインストール・スクリプト

odbc_uninstall.exe

なし

Microsoftドライバ・マネージャおよびAdministratorファイル

Microsoft ODBC 3.52コンポーネントとともにインストールされるファイルのリストは、Microsoft ODBC 3.52 Software Development Kit and Programmer's Referenceを参照してください。

Microsoft ODBCコンポーネントは、Microsoft Data Access Component (MDAC)キットに含まれています。WindowsのOracle Database ODBCドライバは、MDACバージョン2.8を使用してテストされています。

unixODBCドライバ・マネージャおよびAdministratorファイル

unixODBCドライバ・マネージャとともにインストールされるファイルのリストは、unixODBCのREADMEファイルおよびINSTALLファイルを参照してください。

関連項目:

2.3 構成

この項では、Oracle Database ODBCドライバの構成に必要な手順について説明します。

インストールした後、ODBCアプリケーションの環境変数を設定し、ネットワーク・データベース・サービスを構成し、WindowsおよびUNIXプラットフォームのデータソースを構成する必要があります。

Microsoft ODBC Administratorを使用して、Windows上でOracle Database ODBCドライバのデータソースを構成します。詳細は、「データソースの構成」のデータソースの構成に関する情報を参照してください。

UNIXクライアントでOracle Database ODBCドライバ・データソースを構成するには、「UNIXプラットフォームでの構成」を参照してください。

トピック:

2.3.1 ODBCアプリケーションの環境設定

ODBCアプリケーションでは、Oracle Databaseに接続するために、Oracle Instant Client ODBCドライバの共有ライブラリ・ファイルをロードする必要があります。Linux/Unixでは、共有ライブラリ・ファイルlibsqora.so.XX.Y (libsqora.so.19.1など)のディレクトリ・パスは、LD_LIBRARY_PATH環境変数またはプラットフォームの同等のもので設定する必要があります。/etc/ld.so.confで構成することもできます。Windowsでは、PATH環境変数に共有ライブラリ・ファイルのディレクトリ・パスを設定する必要があります。

関連項目:

2.3.2 Oracle Net Servicesの構成

データソースを構成する前に、ネットワーク・データベース・サービスを構成して各Transparent Network Substrate (TNS)サービス名のエントリを構成する必要があります。これを行うには、Oracle Net Configuration Assistant (NETCA)ツールを使用します。

TNSサービス名は、ODBCドライバがデータを取得するOracleデータベースの位置です。

NETCAを使用して、tnsnames.oraファイルに各TNSサービス名のエントリを作成できます。

ノート:

Oracle Net Servicesのインストール時に、NETCAもインストールされます。

2.3.3 UNIXプラットフォームでの構成

UNIXプラットフォームのOracle Database ODBCドライバに対して、インストール後構成タスクを実行します。

  1. install-home/odbc/utl/odbc_update_ini.shを実行して、UNIXでOracle Database ODBCドライバを構成します。

    ユーティリティodbc_update_ini.shは、4つのコマンドライン引数を取得します。

    • arg-1: unixODBC DMがインストールされた場所のパスを入力します。

    • arg-2: ドライバのインストール場所のパス(オプション)を入力します。この引数が渡されない場合、ドライバのパスはユーティリティが実行されるディレクトリに設定されます。

    • arg-3: ドライバ名(オプション)。この引数が渡されない場合、ドライバ名はダウンロードされたバージョンに設定されます。

    • arg-4: データソース名またはDSN (オプション)。値が渡されない場合、DSNはダウンロードされたバージョンに設定されます。

    関連項目:

    odbc_update_ini.shの使用方法の詳細は、「使用方法」を参照してください。

  2. PATHLD_LIBRARY_PATHLIBPATHTNS_ADMINなどの環境変数の値を更新および検証します。
2.3.3.1 使用方法
odbc_update_ini.sh <ODBCDM_Home> [<Install_Location> <Driver_Name> <DSN> <ODBCINI>]

表2-2 パラメータの説明

パラメータ 必須/オプション 説明

ODBCDM_Home

必須

unixODBCドライバ・マネージャのホーム・ディレクトリ・パス。

Install_Location

オプション

Oracle Instant Clientディレクトリ・パス。デフォルトのパスは現在のディレクトリです。

Driver_Name

オプション

現在のOracle Instant Clientホームに存在するOracle Database ODBCドライバを識別するドライバ名。デフォルトの名前は「Oracle 23ai ODBCドライバ」のようになります。

DSN

オプション

ODBCデータソース名(DSN)を設定します。デフォルトの名前はOracleODBC-23aiです。

ODBCINI

オプション

.odbc.iniファイルのディレクトリ・パス。デフォルトのパスは、ユーザーのホーム・ディレクトリ(たとえば、~/.odbc.ini)です。

2.3.4 Windowsでの構成

WindowsのOracle Database ODBCドライバに対して、インストール後構成タスクを実行します。

トピック:

2.3.4.1 データソースの構成

ノート:

次の構成ステップはWindowsユーザー用です。Unixユーザーは、odbc_update_ini.shファイルを使用してデータソース名(DSN)を作成する必要があります。

Oracle Database ODBCドライバをインストールしてOracle Net Servicesを構成した後、Oracle Database ODBCドライバを使用する前に、データソースを構成する必要があります。

アプリケーションとデータソース間で通信を行うには、構成情報が設定されている必要があります。Oracle Database ODBCドライバは、この構成情報からアクセス対象の情報を取得します。

データソースは、アクセス対象のデータと、それに対応付けられたオペレーティング・システム、データベース管理システムおよびデータベース管理システムにアクセスするためのネットワーク・プラットフォームで構成されます。Oracle Database ODBCドライバが発行する要求のデータソースはOracle Databaseであり、このデータソースはOracle Net Servicesによるトランスポートをサポートしています。

Oracleデータソースを構成または追加するには:

Oracle Database ODBCドライバをインストールしたら、「ODBC データ ソース アドミニストレーター」を使用して、各Oracle DatabasesにOracleデータソースを構成または追加します。Oracle Database ODBCドライバは、データソースを追加する際の入力情報を使用してデータにアクセスします。次のステップを実行します。

  1. 「スタート」メニューから「プログラム」→「管理ツール」→「データ ソース (ODBC)」を選択します。

    「ODBC データ ソース アドミニストレーター」ダイアログ・ボックスの「ドライバー」タブに、インストールされているドライバのリストが表示されます。「ドライバー」タブに、インストールしたOracle Database ODBCドライバが表示されていることを確認します。

  2. 「システム DSN」タブで、「追加」をクリックして「データ ソースの新規作成」ダイアログ・ボックスを表示します。

  3. 「データ ソースの新規作成」ダイアログ・ボックスで、インストールされているドライバのリストから、データソースを設定するOracle Database ODBCドライバを選択します。

  4. 「完了」をクリックします。

    「Oracle ODBC ドライバー構成」ダイアログ・ボックスが表示されます。DSNとTNSサービス名は必ず入力する必要があります。このダイアログ・ボックスでその他の必要な情報を入力することも、フィールドを空白のままにして、アプリケーションを実行するときに情報を指定することもできます。

  5. データを入力したら、「OK」をクリックするか[Enter]を押します。

データソースはいつでも変更または削除できます。次の項では、データソースの追加、変更または削除方法を説明します。

Oracleデータソースを変更するには:

  1. 「スタート」メニューから「プログラム」→「管理ツール」→「データ ソース (ODBC)」を選択します。

  2. 「ODBC データ ソース アドミニストレーター」ダイアログ・ボックスで、「データ ソース」リストからデータソースを選択し、「構成」をクリックします。

    「Oracle ODBC ドライバー構成」ダイアログ・ボックスが表示されます。

  3. 「Oracle ODBC ドライバー構成」ダイアログ・ボックスで、必要に応じてオプション値を変更し、「OK」をクリックします。

Oracleデータソースを削除するには:

  1. 「スタート」メニューから「プログラム」→「管理ツール」→「データ ソース (ODBC)」を選択します。
  2. 「ODBC データ ソース アドミニストレーター」ダイアログ・ボックスで、「データ ソース」リストから削除するデータソースを選択します。
  3. 「削除」「はい」の順にクリックして、削除を確定します。
2.3.4.2 「Oracle Database ODBC ドライバー構成」ダイアログ・ボックス

ノート:

「Oracle Database ODBC ドライバー構成」ダイアログ・ボックスを使用できるのは、Microsoft Windowsユーザーのみです。

次のスクリーンショットは、「Oracle Database ODBC ドライバー構成」ダイアログ・ボックスの例を示しています。

図2-1 「Oracle ODBC ドライバー構成」ダイアログ・ボックス

図2-1の説明が続きます
「図2-1 「Oracle ODBC ドライバー構成」ダイアログ・ボックス」の説明

次のリストは、前図に示した「Oracle Database ODBC ドライバー構成」ダイアログ・ボックスにある主な設定オプションおよびフィールドの説明です。ダイアログ・ボックスの下半分にあるタブは、後続のトピックで説明します。

  • データソース名(DSN) - ODBCでデータソースを識別する名前。たとえば、「odbc-pc」です。DSNは入力する必要があります。

  • 説明 - データソースに含まれているデータについての説明やコメント。たとえば、「全従業員の入社日、給与履歴、現行評価」などとします。「説明」フィールドはオプションです。

  • TNSサービス名 - ODBCドライバがデータを取得するOracleデータベースの位置。これは、Oracle Net Servicesを構成したときに、Oracle Net Configuration Assistant (NETCA)を使用して入力したものと同じ名前です。詳細は、NETCAのマニュアルおよび「Oracle Database ODBCドライバの最初の使用について」を参照してください。TNSサービス名は、使用可能なTNS名のプルダウン・リストから選択できます。たとえば、「ODBC-PC」です。TNSサービス名を入力する必要があります。

  • ユーザーID - データにアクセスするために使用するサーバー上のアカウントのユーザー名です。たとえば、「scott」です。「ユーザーID」フィールドはオプションです。

DSNとTNSサービス名は必ず入力する必要があります。このダイアログ・ボックスでその他の情報を入力することも、フィールドを空白のままにして、アプリケーションを実行するときに情報を指定することもできます。

前述のメイン設定オプションの他に、「接続テスト」オプションがあります。「接続テスト」オプションは、DSN定義で指定されたデータベースに接続することによって、ODBC環境が適切に構成されているかを確認します。「接続テスト」をクリックすると、ユーザー名およびパスワードの入力を求められます。

「Oracle Database ODBC ドライバー構成」ダイアログ・ボックスの下半分にあるオプション・タブの説明は、次のリンクのいずれかをクリックします。

「アプリケーション」のオプション

「Oracle」のオプション

「Workarounds」のオプション

SQL Server移行オプション

「アプリケーション」のオプション

次のスクリーンショットは、「Oracle ODBC ドライバー構成」ダイアログ・ボックスにある「アプリケーション」オプション・タブの例を示しています。

図2-2 「Oracle ODBC ドライバー構成」ダイアログ・ボックスの「アプリケーション」オプション・タブ

図2-2の説明が続きます
「図2-2 「Oracle ODBC ドライバー構成」ダイアログ・ボックスの「アプリケーション」オプション・タブ」の説明

次のリストは、前図で示した「アプリケーション」オプション・タブにあるフィールドの説明です。

  • 結果セットを有効化 - Oracle結果セットの処理を有効にします。結果セットがアプリケーションに必要ない場合、結果セットのサポートを無効にできます。パッケージからの結果セットを含んでいないプロシージャ・コールは、少々パフォーマンスが低下します。デフォルトでは、結果セットは有効です。

  • 問合せタイムアウトを有効化 - SQL問合せでタイムアウトを有効にします。デフォルトでは、Oracle Database ODBCドライバはSQLSetStmtAttr関数用にSQL_ATTR_QUERY_TIMEOUT属性をサポートします。このボックスが選択されていない場合、Oracle Database ODBCドライバは、タイムアウトが機能しないことを示すメッセージを返します。デフォルトでは、問合せタイムアウトは有効です。

  • 読取専用接続 - 読取り専用アクセスを指定するには、このボックスを選択します。デフォルトは、書込み可能な接続です。

  • カーソル・クローズを有効化 - カーソル・クローズを有効にします。デフォルトでは、カーソル・クローズは無効(フィールドが空)になっています。これは、不必要なパフォーマンス低下の原因となるためこの動作が望ましくない場合に、カーソルのクローズをコールしてもOCIカーソルのクローズが強制されないことを意味します。カーソルのクローズをコールしたときにOCIカーソルを強制的にクローズする場合は、カーソル・クローズを有効にします。

ノート:

カーソルがクローズされるたびに、パフォーマンスに影響があります。

  • スレッド・セーフティを有効化 - データソースについてスレッド・セーフティを無効にすることもできます。スレッド・セーフティが不要な場合は、このオプションを指定しなければスレッド・セーフティのオーバーヘッドをなくすことができます。デフォルトではスレッド・セーフティは有効です。

  • バッチ自動コミット・モード - デフォルトでは、すべての文が成功した場合、コミットが実行されます。

  • 数値の設定 - 文字列としてバインドされた数値データの受渡しで、どの数値設定を使用して小数点文字や3桁セパレータを決定するかを指定できます。このオプションでは、Oracle NLSの設定(デフォルトの設定)、Microsoftのデフォルトの地域設定(Oracle OLE DBドライバの動作とあわせて相互運用性を向上)、US数値設定(英語環境以外でMS AccessまたはDAO (Database Access Object)を使用する際に必要)の選択ができます。

関連項目:

メイン構成設定オプションは、「「Oracle ODBCドライバ構成」ダイアログ・ボックス」を参照してください

「Oracle」のオプション

次のスクリーンショットは、「Oracle Database ODBC ドライバー構成」ダイアログ・ボックスにある「Oracle」オプション・タブの例を示しています。

図2-3 「Oracle ODBC ドライバー構成」ダイアログ・ボックスの「Oracle」オプション・タブ

図2-3の説明が続きます
「図2-3 「Oracle ODBC ドライバー構成」ダイアログ・ボックスの「Oracle」オプション・タブ」の説明

次のリストは、前図で示した「Oracle」オプション・タブにあるフィールドの説明です。

  • フェッチ・バッファ・サイズ - 単一の問合せでアプリケーション・プログラムがリクエストする行数に関係なく、ODBCドライバがOracle Databaseから一度にプリフェッチするデータの行数を決定するために使用されるメモリー量。ただし、プリフェッチされる行数は、単一の問合せで指定された列の幅と数に依存します。通常一度に20行未満をフェッチするアプリケーションでは、特に低速なネットワーク接続の場合や非常に負荷の高いサーバーでのレスポンス時間が向上します。フェッチ・バッファ・サイズを大きく設定しすぎると、レスポンス時間が悪化したり、メモリーを大量に消費することがあります。

ノート:

LONGおよびLOBデータ型がある場合、ODBCドライバのプリフェッチ行数は、フェッチ・バッファ・サイズに依存しません。LONGおよびLOBデータ型では、パフォーマンスの改善が見込めず、過度のメモリー消費を引き起こす可能性があります。LONGおよびLOBデータ型が存在する場合にのみ、ODBCドライバはフェッチ・バッファ・サイズを無視し、既定の行数をプリフェッチします。

  • LOBを有効化 - Oracle LOBの書込みを可能にします。アプリケーションにOracle LOBの書込みが不要であれば、LOBのサポートは無効にできます。LOBを有効にすると、INSERT文とUPDATE文の処理時にわずかながらパフォーマンスが低下します。LOBの書込みはデフォルトで有効ですが、LOBデータ型をサポートしないOracleデータベースでは無効になります。

  • ステートメントのキャッシングを有効化 - 文キャッシュ機能を有効にします。これにより、ユーザーが問合せおよび関連パラメータの同じテキストを複数回解析する必要がある場合に、問合せの解析パフォーマンスが向上します。デフォルトでは無効になります。

  • キャッシュバッファサイズ - 文のキャッシュには、サービス・コンテキスト(OCI_ATTR_STMTCACHESIZE)の属性を使用して変更可能な最大サイズ(文の数)があります。デフォルトのキャッシュ・バッファ・サイズは20で、文キャッシングのオプションが有効化されている場合にのみ使用されます。キャッシュ・バッファ・サイズを0に設定すると、文のキャッシング機能は無効になります。

  • 最大トークン・サイズ - トークン・サイズを4KB (4096バイト)から開始する最も近い1KB (1024バイト)の倍数に設定します。デフォルト・サイズは8KB (8192バイト)です。設定できる最大値は128KB (131068バイト)です。

  • ORAエラーを変換 - SQL翻訳フレームワーク機能を使用している移行済のサード・パーティODBCアプリケーションでは、サーバーから返されるエラーがネイティブ・データベース形式である必要があると予想されます。このオプションを有効にすると、SQL翻訳プロファイルに登録されているエラー翻訳に基づいたネイティブ・エラーを受け取ることができます。

  • 「Oracle」オプション・タブの「フェイルオーバー」領域には次のフィールドがあります。

    • フェイルオーバーを有効化 - Oracle Fail SafeとOracle Parallel Serverのフェイルオーバーの再試行を有効にします。このオプションは、Oracle Fail SafeとOracle Parallel Serverのフェイルオーバー機能に対する拡張です。このオプションで追加フェイルオーバー再試行が構成可能になります。デフォルトは有効です。

    • 再試行 - 接続のフェイルオーバーを試みる回数。デフォルトは10回です。

    • 遅延 - フェイルオーバーを試みる間隔の秒数。デフォルトは10秒です。

  • 集計SQLタイプ - 集計関数で返される数値型(SQL_FLOATSQL_DOUBLEまたはSQL_DECIMAL)を指定します。

  • LOBプリフェッチ・サイズ - 一度にデータベースからプリフェッチするLOBデータの量(バイト単位)を設定します。デフォルト・サイズは8192です。

ノート:

Oracle Fail Safeは非推奨で、今後のリリースではサポート対象外になり、使用できなくなる可能性があります。Oracle RAC One Nodeなどの単一ノード・フェイルオーバー・オプションを評価することをお薦めします。

ノート:

Oracle Fail SafeとOracle Parallel Serverの設定や使用方法については、それぞれの製品のドキュメントを参照してください。

関連項目:

メイン構成設定オプションは、「「Oracle ODBCドライバ構成」ダイアログ・ボックス」を参照してください

「Workarounds」のオプション

次のスクリーンショットは、「Oracle Database ODBC ドライバー構成」ダイアログ・ボックスにある「Workarounds」オプション・タブの例を示しています。

図2-4 「Oracle ODBC ドライバー構成」ダイアログ・ボックスの「Workarounds」オプション・タブ

図2-4の説明が続く
「図2-4 「Oracle ODBC ドライバー構成」ダイアログ・ボックスの「Workarounds」オプション・タブ」の説明

次のリストは、前図で示した「Workarounds」オプション・タブにあるフィールドの説明です。

  • TIMESTAMPをDATEとしてバインド - このボックスを選択すると、Oracle Database ODBCドライバにより、SQL_TIMESTAMPパラメータがOracleのTIMESTAMP型(デフォルト)ではなくOracle DATE型で強制的にバインドされます。

  • SQL_WCHAR強制サポート - このボックスを選択すると、SQLDescribeCol、SQLColumnsおよびSQLProcedureColumnsにより、SQL_CHAR列にはSQL_WCHARのデータ型、SQL_VARCHAR列にはSQL_WVARCHARのデータ型、およびSQL_LONGVARCHAR列にはSQL_WLONGVARCHARのデータ型がそれぞれ無条件で戻されるようになります。この機能により、これらのODBCコールの結果に依存するアプリケーション(たとえば、ADOアプリケーション)でのUnicodeのサポートが可能になります。デフォルトでは、このサポートは無効になっています。

  • MTS無効 - このボックスをクリアすると、Microsoft Transaction Server (MTS)サポートが有効になります。MTSのサポートは、デフォルトで無効になっています。

  • METADATA IDデフォルトにSQL_TRUEをセット - このボックスを選択すると、SQL_ATTR_METADATA_ID接続と接続時の文属性のデフォルト値がSQL_TRUEに変更されます。通常ではSQL_ATTR_METADATA_IDSQL_FALSEがデフォルトです。接続後に明示的に属性値を変更するアプリケーションのODBCコールが、このオプションにより影響を受けることはなく、関数は問題なく終了します。デフォルトでは、このオプションは無効です。

  • LONG列データのサイズをプリフェッチ - LONGまたはLONG RAWデータをプリフェッチしてODBCアプリケーションのパフォーマンスを向上させるには、この値を設定します。この機能強化により、ユーザーが設定したプリフェッチ・サイズに応じてOracle ODBC Driverのパフォーマンスが最大10倍向上します。デフォルト値は0です。設定できる最大値は64KB (65536バイト)です。

    プリフェッチ・サイズの値が65536より大きい値に設定されていても、フェッチされるデータは65536バイトのみです。データベースに65536バイトより大きいLONGまたはLONG RAWデータがある場合は、単一行のフェッチが行われ、完全なLONGデータがフェッチされるように、プリフェッチ・サイズを0 (デフォルト値)に設定します。ポーリング以外のモードでプリフェッチ・サイズより少ないバッファ・サイズを渡すと、データベースのLONGデータ・サイズがバッファ・サイズより大きい場合には、データの切捨てエラーが発生します。

  • SQLDescribeParamを無効化 - SQLDescribeParam関数が有効な場合、すべてのパラメータに対してSQL_VARCHARデータ型が戻されます。SQL_WCHAR強制サポート関数も有効な場合は、すべてのパラメータに対してSQL_WVARCHARデータ型が戻されます。デフォルトでは、この関数は有効です。

  • NUMBERをFLOATとしてバインド - このボックスを選択すると、Oracle Database ODBCドライバで、FLOATデータを含むNUMBER列がBinary Float (デフォルト)ではなくFloatとしてバインドされます。

  • RULEヒントを無効化 - このボックスをクリアすると、カタログ問合せで指定されているRULE Hintが有効になります。デフォルトでは、RULE Hintのオプションは無効です。

  • OCIDescribeAnyを使用 - このボックスを選択すると、アプリケーションがREF CURSORSを戻す小さなパッケージ・プロシージャを頻繁にコールする場合にドライバにOCIDescribeAny() の使用を強制することで、パフォーマンスが向上します。

関連項目:

SQL Server移行オプション

次のスクリーンショットは、「Oracle ODBC ドライバー構成」ダイアログ・ボックスにある「SQLServer Migration」オプション・タブの例を示しています。

図2-5 「Oracle ODBC ドライバー構成」ダイアログ・ボックスの「SQLServer Migration」オプション・タブ

図2-5の説明が続く
「図2-5 「Oracle ODBC ドライバー構成」ダイアログ・ボックスの「SQLServer Migration」オプション・タブ」の説明

前図の「SQLServer Migration」オプション・タブのフィールドは次のとおりです。

  • Enable EXEC Syntax - SQL Server EXEC構文のサポートを有効にします。Oracle Databaseサーバーによって処理される前に、EXEC文で指定されるサブプログラム・コールは、対応するOracleサブプログラム・コールに変換されます。デフォルトではこのオプションは無効になっています。

  • Schema - 変換されたOracleサブプログラムは、ユーザーのデフォルト・スキーマに定義されます。ただし、同じSQL Serverデータベースからのすべてのサブプログラムを、データベース名をスキーマ名としてOracleスキーマに移行する場合、このフィールドは「データベース」に設定します。同じSQL Serverユーザーに所有されていたすべてのサブプログラムを同じOracleスキーマに定義する場合、このフィールドは「オーナー」に設定します。デフォルトでは、このフィールドは空欄になっています。

関連項目:

メイン構成設定オプションは、「「Oracle ODBCドライバ構成」ダイアログ・ボックス」を参照してください

2.3.5 ロック・タイムアウトの削減

Oracleサーバーは、トランザクション間のロック競合が解消されるまで無期限に待機します。Oracle Database ODBCドライバのoraodbc.iniファイルのLockTimeOutエントリを設定することで、Oracleサーバーがロックの解消を待機する時間を制限できます。LockTimeOutパラメータに入力する値は、Oracleサーバーがリクエストしたロックを取得できない場合にタイムアウトになるまでの秒数です。次の例では、Oracleサーバーは60秒後にタイムアウトになります。

[Oracle ODBC Driver Common]
LockTimeOut=60

2.4 Oracle Instant Client ODBCへのパッチ適用

この項では、Oracle Instant Client ODBCへのパッチ適用に必要な手順について説明します。

ノート:

  • パッチを適用する前に、Oracle Database ODBCドライバ共有ライブラリおよびその他のファイルをバックアップします。

  • パッチ適用プロセスの一環として、Oracle Instant Clientのパッケージおよびライブラリを再構築する必要があります。

トピック:

2.4.1 LinuxおよびUNIXでのOracle Instant Client ODBCへのパッチ適用方法1

Linux/UNIXのInstant Client ODBCドライバにパッチを適用するには、パッチが適用されたORACLE_HOMEでInstant Client ODBCパッケージとBasicまたはBasic Lightパッケージを生成します。これらの新しいパッケージは、パッチを適用する必要があるInstant Clientディレクトリに解凍する必要があります。このパッチ適用方法をお薦めします。

関連項目:

Oracle Instant Clientへのパッチ適用では、Instant Client BasicおよびBasic LightパッケージおよびInstant Client ODBCへのパッチ適用および生成の手順について説明します。

2.4.2 LinuxおよびUNIXでのOracle Instant Client ODBCへのパッチ適用方法2

または、Oracle Instant Client ODBCドライバにパッチを適用するには、パッチを適用したORACLE_HOMEから次のファイルをコピーします。

  • ODBCドライバの共有ライブラリ・ファイル:
    • 23aiの場合: libsqora.so.23.1
    • 21cの場合: libsqora.so.21.1
    • 19cの場合: libsqora.so.19.1
    • 18cの場合: libsqora.so.18.1
    • 12cの場合: libsqora.so.12.1
  • Oracle Instant Client Basicの使用時に必要な追加のファイル:
    • 23aiの場合: libociei.so、libclntshcore.so.23.1、libclntsh.so.23.1、libnnz23.so、libons.so
    • 21cの場合: libociei.so、libclntshcore.so.21.1、libclntsh.so.21.1、libnnz21.so、libons.so
    • 19cの場合: libociei.so、libclntshcore.so.19.1、libclntsh.so.19.1、libnnz19.so、libons.so
    • 18cの場合: libociei.so、libclntshcore.so.18.1、libclntsh.so.18.1、libnnz18.so、libons.so
    • 12cの場合: libociei.so、libclntshcore.so.12.1、libclntsh.so.12.1、libnnz12.so、libons.so
  • Oracle Instant Client Basic Lightの使用時に必要な追加のファイル:
    • 23aiの場合: libclntsh.so.23.1、libclntshcore.so.23.1、libociicus.so、libnnz23.so、libons.so
    • 21cの場合: libclntsh.so.21.1、libclntshcore.so.21.1、libociicus.so、libnnz21.so、libons.so
    • 19cの場合: libclntsh.so.19.1、libclntshcore.so.19.1、libociicus.so、libnnz19.so、libons.so
    • 18cの場合: libclntsh.so.18.1、libclntshcore.so.18.1、libociicus.so、libnnz18.so、libons.so
    • 12cの場合: libclntsh.so.12.1、libclntshcore.so.12.1、libociicus.so、libnnz12.so、libons.so

2.4.3 Windowsでのパッチ適用

WindowsでのInstant Client ODBCドライバの手動パッチ適用は、パッチが適用されたORACLE_HOMEまたは解凍されたOracle Databaseバンドル・パッチからODBCドライバ共有ライブラリ・ファイルおよびサポート・ライブラリ・ファイルをコピーすることでのみ適用できます。これらをInstant Clientディレクトリにコピーする必要があります。Instant Client ODBCパッケージの生成は、Windowsでは使用できません。

次のファイルをInstant Clientディレクトリにコピーする必要があります。

  • ODBCドライバ共有ライブラリ・ファイル: sqora32.dll、sqoras32.dll、sqresus.dll、sqresja.dll
  • Oracle Instant Client (Basic)の使用時に必要な追加のファイル:
    • 23aiの場合: oraociei23.dll、orannzsbb23.dll、oci.dll、oraons.dll、ociw32.dll、oraociei23.sym、orannzsbb23.sym、oci.sym、ociw32.sym
    • 21cの場合: oraociei21.dll、orannzsbb21.dll、oci.dll、oraons.dll、ociw32.dll、oraociei21.sym、orannzsbb21.sym、oci.sym、ociw32.sym
    • 19cの場合: oraociei19.dll、orannzsbb19.dll、oci.dll、oraons.dll、ociw32.dll、oraociei19.sym、orannzsbb19.sym、oci.sym、ociw32.sym
    • 18cの場合: oraociei18.dll、orannzsbb18.dll、oci.dll、oraons.dll、ociw32.dll、oraociei18.sym、orannzsbb18.sym、oci.sym、ociw32.sym
    • 12cの場合: oraociei12.dll、orannzsbb12.dll、oci.dll、oraons.dll、ociw32.dll、oraociei12.sym、orannzsbb12.sym、oci.sym、ociw32.sym
  • Oracle Instant Client (Basic Light)の使用時に必要な追加のファイル:
    • 23aiの場合: oraociicus23.dll、orannzsbb23.dll、oci.dll、oraons.dll、ociw32.dll、oraociicus23.sym、orannzsbb23.sym、oci.sym、ociw32.sym
    • 21cの場合: oraociicus21.dll、orannzsbb21.dll、oci.dll、oraons.dll、ociw32.dll、oraociicus21.sym、orannzsbb21.sym、oci.sym、ociw32.sym
    • 19cの場合: oraociicus19.dll、orannzsbb19.dll、oci.dll、oraons.dll、ociw32.dll、oraociicus19.sym、orannzsbb19.sym、oci.sym、ociw32.sym
    • 18cの場合: oraociicus18.dll、orannzsbb18.dll、oci.dll、oraons.dll、ociw32.dll、oraociicus18.sym、orannzsbb18.sym、oci.sym、ociw32.sym
    • 12cの場合: oraociicus12.dll、orannzsbb12.dll、oci.dll、oraons.dll、ociw32.dll、oraociicus12.sym、orannzsbb12.sym、oci.sym、ociw32.sym

ノート:

Oracle Databaseバンドル・パッチからコピーする際に、前述のファイルの一部が欠落している場合があります。これは、これらのファイルが変更されていないため、パッチを適用する必要がないことを意味します。

2.5 アンインストール

この項では、Oracle Database ODBCドライバのアンインストールに必要なステップについて説明します。

トピック:

2.5.1 LinuxおよびUNIXでのOracle Instant Client ODBCのアンインストール

LinuxおよびUNIXでOracle Instant Client ODBCをアンインストールするには、次の手順を使用します。

  1. unixODBCドライバ・マネージャのodbcinst.iniファイルからOracle Database ODBCドライバ・エントリを削除します。
    このエントリのデフォルト名は、[Oracle 19c ODBC driver]のようになります。
  2. odbc.iniからOracle Database ODBCドライバのDSNエントリを削除します。
    DSNエントリのデフォルト名は、[OracleODBC-19c]のようになります。
  3. Instant Client ODBCディレクトリ内のすべてのファイルおよびディレクトリを削除します。

2.5.2 WindowsでのOracle Instant Client ODBCのアンインストール

WindowsでInstant Client ODBCをアンインストールするには、次の手順を使用します。

  1. 「ODBC データ ソース アドミニストレーター」(odbcad32)コンソールで、Oracle Database ODBCドライバに関連付けられたDSNを削除します。
  2. Instant Client ODBCディレクトリからodbc_uninstall.exeファイルを実行します。
  3. Instant Client ODBCディレクトリ内のすべてのファイルおよびディレクトリを削除します。