ここでは、次の項目について説明します。
次に、Oracle Database 12cリリース1 (12.1)の『Oracle C++ Call Interfaceプログラマーズ・ガイド』の変更点を示します。
今回のリリースの新機能は、次のとおりです。
OCCI ID列のメタデータ
現在のデータベース・リリースでは、ID列として作成できる列が提供されています。行を表に挿入すると、これらの列の値が自動的に生成されます。
「ID列のメタデータ」を参照してください。
この機能により、新しいColumnAttrId enum
がMetaDataクラス(表13-27を参照)に追加され、オーバーロードされた形式のgetBoolean()メソッドがMetaDataクラスに追加されました。
詳細は、『Oracle Databaseリファレンス』を参照してください。
配列DMLの反復ごとの行数のサポート
この機能により、複数の反復で実行されるDML文の反復ごとに影響を受けた行数が取得されます。「反復操作の実行」を参照してください。
この機能により、StatementクラスにgetDMLRowCounts()、getRowCountsOption()およびsetRowCountsOption()の3つの新しいメソッドが追加されています。
クライアント側のデプロイメント設定のサポート。これには、次のものが含まれています。
新しいデプロイメント設定のoraaccess.xml
ファイル
詳細は、「クライアント側のデプロイ・パラメータと自動チューニング」および『Oracle Call Interfaceプログラマーズ・ガイド』を参照してください。
増加した行数と追加されたエラー・コード範囲のデータ型の使用のサポート
この機能により、OCCIの行数の値が現行のint
制限からoraub8
値に拡張されました。また、OCCIエラー・コードが拡張され、ORA-65535
以降の値がサポートされるようになりました。
「増加した行数と追加されたエラー・コード範囲のデータ型の使用」を参照してください。
この機能により、増加した行数を戻す新しいメソッドgetUb8RowCount()がStatementクラスに追加されました。
再編成されたInstant Clientライブラリ
ライブラリの構造が、開発を明確かつ容易にするために変更されました。「Instant Clientのインストール」を参照してください。
OCCIおよびTransaction Guard
これらの機能の目的は、停止や移行の後に進行中の作業を安全に再実行することです。計画済の停止と計画外の停止のいずれの後にも、システムを復帰するために使用可能です。これらの機能は失敗した接続またはセッションを検出し、分散アプリケーションの存続しているインスタンス上で迅速に再確立します。トランザクションの最終結果を戻すインタフェースのセットを提供します。これらの機能の影響は次のとおりです。
トランザクションの冪等性により、論理トランザクションIDがサポートおよび公開されています。ハンドルの属性でltxid
の値が取得され、PL/SQLコールでステータスが取得されます。
TAF SELECT
モードでは、トランザクションの冪等性を暗黙的に使用することで、冪等性のサポートが拡張されました。
エラー分類APIでは、一時的なサーバーの停止(サーバー・ノード、インスタンスまたはプロセスのクラッシュ)によるエラーに関する情報(リカバリ可能かどうか)を提供しています。アプリケーションが再接続してコールが再試行されると、エラーがリカバリすることがあります。
これらの機能により、新しいメソッドgetLTXID()がConnectionクラスに、新しいメソッドisRecoverable()がSQLExceptionクラスに追加されました。これらの機能は、『Oracle Database開発ガイド』で詳細に説明されています。
プラガブル・データベースのサポート
「プラガブル・データベースのサポート」を参照してください。
新しい4つのメソッドのEnvironmentクラスへの追加
これらのメソッドは次のとおりです。
getNLSLanguage(): 現行の環境のNLS言語を戻します。
setNLSLanguage(): 現行の環境のNLS言語を指定します。
getNLSTerritory(): 現行の環境のNLS地域を戻します。
setNLSTerritory(): 現行の環境のNLS地域言語を指定します。
これらのメソッドは、プログラムによる言語と地域の設定方法を提供します。これらのメソッドを使用して設定された値は、プロセスの環境変数NLS_LANG
を介して設定された値をオーバーライドします。
大きな(32K)VARCHAR2
、NVARCHAR2
およびRAW
データ型をサポートするために、StatementクラスへのsetDataBuffer()およびsetDataBufferArray()メソッドのためのオーバーロードされたメソッドの追加、およびResultsetクラスへのsetDataBuffer()メソッドの追加