データのテストおよび変換

データのテストおよび変換は、ExtractまたはReplicatによって実行できます。これらの機能は、Oracle GoldenGateの組込みの列変換関数をTABLE文またはMAP文のCOLMAP句内で使用することで実装します。これらの変換関数では、次の処理を実行できます。

  • 日付の変換。

  • 列値の存在確認のテスト。

  • 算術演算の実行。

  • 数値および文字列の操作。

  • NULL値、無効なデータおよび欠落データの処理。

  • テストの実行。

この章では、データ操作に関連するいくつかのOracle GoldenGate関数の概要について説明します。詳細なリファレンスは、Oracle GoldenGateリファレンスfor Windows and UNIXを参照してください。

Oracle GoldenGate関数で提供される機能の範囲外のロジックを使用する必要がある場合は、Oracle GoldenGateユーザー・イグジットを実装して独自の関数をコールできます。ユーザー・イグジットの詳細は、「ユーザー・イグジットを使用したOracle GoldenGate機能の拡張」を参照してください。

Oracle GoldenGate変換関数の一般的な構文は次のとおりです。

構文

@function (argument)

表8-6 変換関数の構文

構文の要素 説明

@function

Oracle GoldenGate関数の名前。関数名には、接頭辞@が付きます(@COMPUTE@DATEなど)。関数名と入力引数の前にある開き丸カッコの間の空白は、オプションです。

argument

関数の引数。

表8-7 関数の引数

引数の要素

数値定数

123

一重引用符で囲まれた文字列リテラル

'ABCD'

ソース列の名前

PHONE_NO or phone_no, or "Phone_No" or Phone_no

データベースが大/小文字の区別をしないか、大/小文字の区別をするか、大/小文字の区別をする場合に引用符が必要か、大/小文字の区別をする場合に引用符を必要としないかにより異なります。

算術式

COL2 * 100

比較式

((COL3 > 100) AND (COL4 > 0))

他のOracle GoldenGate関数

AMOUNT = @IF (@COLTEST (AMT, MISSING, INVALID), 0, AMT)