ヘッダーをスキップ
Oracle TimesTen In-Memory Database C開発者およびリファレンス・ガイド
リリース7.0
E05164-03
  目次へ
目次
索引へ
索引

前へ
前へ
次へ
次へ
 

ttXlaGenerateSQL

説明

更新レコードの結果を示すSQL文を生成します。生成された文は、データ・ストアにもデータベースにも適用されません。かわりに、文は、最大サイズがmaxLenパラメータによって指定される特定のバッファに返されます。バッファの実際のサイズはactualLenによって返されます。更新および削除のレコードの場合、正しいSQLを生成するために、ttXlaGenerateSQLには、NULL値可能でない列に対する主キー索引または一意索引が必要です。

生成されたSQL文は、XLAハンドルのODBC接続に関係付けられている接続キャラクタ・セットでエンコードされます。

この関数の使用方法については、「TimesTen以外のデータ・ストアへの更新のレプリケート」を参照してください。

構文

SQLRETURN ttXlaGenerateSQL(ttXlaHandle_h handle,

                ttXlaUpdateDesc_t *record,

                out char *buffer,

                SQLINTEGER maxLen,

                out SQLINTEGER *actualLen)

パラメータ

パラメータ
説明
handle
ttXlaHandle_h
データ・ストアのトランザクション・ログ・ハンドル。
record
SQLに変換されるレコード。
buffer
out char *
変換されたSQL文の場所。
maxLen
SQLINTEGER
bufferの最大長。
actualLen
out SQLINTEGER *
bufferの実際の長さ。

結果

コールが成功すると、SQL_SUCCESSが返されます。返されない場合は、ttXlaErrorを使用してエラーをレポートします。

この例では、更新レコードによって表現されるUPDATEに相当するSQL文のテキストを生成します。

ttXlaUpdateDesc_t record;

char buffer[200];

/*

* Get the desired update record into the varable record.

*/

SQLINTEGER actualLength;

rc = ttXlaGenerateSQL(xlahandle, &record, buffer, 200,

                      &actualLength);

注意

ttXlaGenerateSQLは、削除された表、またはレコードが生成された後で変更された表に関連付けられている更新レコードに対してはSQL文を生成できません。

参照

ttXlaApply

ttXlaCommit

ttXlaRollback

ttXlaLookup

ttXlaTableCheck