説明
FORMATSQL
パラメータでは、デフォルトのOracle GoldenGate正規フォーマットではなく、外部SQLフォーマットでデータを出力します。FORMATSQL
は、Oracle GoldenGate Replicat以外のユーティリティでSQLおよびEnscribe表に適用可能な、SQL文(INSERT
、UPDATE
およびDELETE
)を生成します。
注意: データがReplicatプロセスによって処理される場合は、FORMATSQL を使用しないでください。Replicatはデフォルトの正規フォーマットを受け付けます。FORMATASCII またはFORMATXML を使用しているときは、FORMATSQL を使用しないでください。Oracle GoldenGate DDLサポートがアクティブである場合、FORMATASCII を使用しないでください。 |
FORMATSQL
文は、それ以降に定義されているすべての抽出ファイルまたはトレイルに影響します。
ExtractがマルチバイトのDB2サブシステムに接続している場合、FORMATSQL
を使用しないでください。
制約事項
データがReplicatプロセスによって処理される場合は、FORMATSQL
を使用しないでください。Replicatはデフォルトの正規フォーマットを受け付けます。
FORMATASCII
またはFORMATXML
を使用しているときは、FORMATSQL
を使用しないでください。
Oracle GoldenGate DDLサポートがアクティブである場合、FORMATSQL
を使用しないでください。
指定した形式でトレイル出力の生成に使用可能な表メタデータはないため、FORMATSQLをパススルー・モードでデータ・ポンプに使用しないでください。
デフォルト出力
表名や列名などのデータベース・オブジェクト名、およびCHAR
およびVARCHAR
データは、オペレーティング・システムのデフォルトのキャラクタ・セットで書込みが行われます。
オプションなしのFORMATSQL
トランザクションは、カンマ区切りフォーマットで次のように出力されます。
開始トランザクション・インジケータ、B
トランザクションのコミット時のタイムスタンプ
コミットが検出されたトランザクション・ログの順序番号
トランザクション・ログ内のコミット・レコードの相対バイト・アドレス(RBA)
SQL文。
コミット・インジケータ、C
改行インジケータ。
トランザクション内のすべてのレコードは、開始インジケータとコミット・インジケータの間に含まれます。コミット・タイムスタンプとRBAの各組合せは一意です。
構文
FORMATSQL [option] [, ...]
option
には、次のいずれかを指定できます。
NONAMES
挿入操作の列名を省略します(挿入にはすべての列名が含まれているため)。このオプションにより、ファイル・サイズを低減できます。
NOPKUPDATES
ターゲットの主キーの列に影響するUPDATE
操作を、次にINSERT
が続くDELETE
に変換します。デフォルト(NOPKUPDATES
なし)では、出力は標準のUPDATE
操作です。
ORACLE
次の例のように、日付および時刻列をSQL*Plusが受け付けるフォーマットに変換し、Oracleデータベースと互換性を持つようにレコードをフォーマットします。
TO_DATE('2011-01-01','YYYY-MM-DD')