DELETE TRANDATA

DELETE TRANDATAでは、次のいずれかの操作を行います。

デフォルトでは、このコマンドは、Oracle GoldenGateによって使用されるキー列(主キー、一意キー、KEYCOLS列またはすべての行である可能性があります)およびスケジュール列のサプリメンタル・ロギングを削除しようとします。スケジュール列は、主キー、すべての一意キーおよびすべての外部キーです。Oracle GoldenGateのキー列のロギングを削除し、スケジュール列は削除しない場合、NOSCHEDULINGCOLSオプションをDELETE TRANDATAに含めます。ADD TRANDATAがALLCOLSオプションを指定して発行された場合、DELETE TRANDATAをALLCOLSオプションを指定して使用すると、Oracle GoldenGateのキー列を含む、すべての列のサプリメンタル・ロギングが削除されます。DELETE TRANDATAは、すべての表レベルのサプリメンタル・ロギングが無効になるか削除された後に、表の論理レプリケーションを無効にする。この動作は、Oracle 19c以上からサポートされます。また、DELETE TRANDATA操作によって表の最後のサプリメンタル・ログ・グループが削除されると、ALTER TABLE owner.table DISABLE LOGICAL REPLICATIONも実行されます。

DELETE TRANDATAの実行後に、ADD TRANDATA table_nameコマンドを実行して、論理レプリケーションを有効にする必要があります。

ノート: ADD SCHEMATRANDATAを使用して論理レプリケーションを有効にすることはできません。{: .infoboxnote}

このコマンドを使用する前に、DBLOGINコマンドを使用してデータベース接続を確立してください。このコマンドで指定するユーザーは、ADD TRANDATAに必要なものと同じ権限を持っている必要があります。

構文

DELETE TRANDATA [container.]owner.table [NOSCHEDULINGCOLS | ALLCOLS]

[container.]owner.table

表またはファイルのプラガブル・データベース(これがOracleマルチテナント・コンテナ・データベースの場合)、所有者および名前。任意の名前要素にワイルドカードを使用できます。

NOSCHEDULINGCOLS

コマンドで、指定した表のスケジュール列のサプリメンタル・ロギングを削除しないようにします。スケジュール列は、表の主キー、すべての一意キーおよびすべての外部キーです。

ALLCOLS

指定した表のすべての列のサプリメンタル・ロギングを削除します。

例


DELETE TRANDATA hr.employees

DELETE TRANDATA hr.reg*

DELETE TRANDATA hr.jobs ALLCOLS