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

前へ
前へ
次へ
次へ
 

TimesTen以外のデータ・ストアへの更新のレプリケート

TimesTen以外のデータ・ストアへの変更をレプリケートする場合は、ttXlaGenerateSQL関数を使用して、レコード・データをTimesTen以外のサブスクライバで読取りが可能なSQL文に変換します。更新レコードおよび削除レコードの場合は、正しいSQLを生成するために、NULL値可能ではない列に対する主キーまたは一意の索引がttXlaGenerateSQLに必要です。

ttXlaGenerateSQLは、パラメータとしてttXlaUpdateDesc_tを受け入れ、それと同等のSQL文をバッファに出力します。

たとえば、レコード(record)を変換し、その結果のSQL出力を200文字のバッファ(buffer)に保存するには、次の例のように入力します。

ttXlaUpdateDesc_t record;

char buffer[200];

SQLINTEGER actualLength;

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

                      &actualLength);

if (rc != SQL_SUCCESS) {

    handleXLAerror (rc, xla_handle, err_buf, &native_error);

    if ( native_error == 8034 ) { // tt_ErrXlaNoSQL

       printf("Unable to translate to SQL\n");

    }

}

バッファの実際のサイズはactualLengthパラメータによって返されます。