ADMIN_MOVE_TABLE_UTIL プロシージャー - オンライン表移動の変更プロシージャー
ADMIN_MOVE_TABLE_UTIL プロシージャーは、アクティブ表データの移動時に、SYSPROC.ADMIN_MOVE_TABLE ストアード・プロシージャーと連動します。
このストアード・プロシージャーは、ADMIN_MOVE_TABLE プロシージャーによって作成および使用される ADMIN_MOVE_TABLE プロトコル表のユーザー定義可能値を変更するための手段として使用できます。
このプロシージャーが ADMIN_MOVE_TABLE プロトコル表の値を変更するのは、TABSCHEMA および TABNAME パラメーターが参照する表の表移動が既に進行中であり、プロシージャーの呼び出し元の許可 ID が表移動を実行しているユーザーと同じである場合のみです。
許可
このルーチンを使用するには、以下のいずれかの許可が必要です。
- ADMIN_MOVE_TABLE_UTIL プロシージャーに対する EXECUTE 特権
- DATAACCESS 権限
- DBADM 権限
- SQLADM 権限
デフォルトの PUBLIC 特権
制限のないデータベースでは、このプロシージャーが自動的に作成されると、EXECUTE 特権が PUBLIC に付与されます。
構文
このストアード・プロシージャーのスキーマは SYSPROC です。
プロシージャー・パラメーター
- タブ・スキーマ
- この入力パラメーターは、移動中の表が含まれるスキーマの名前を指定します。 この名前には、大文字と小文字の区別があります。 データ・タイプは VARCHAR(128) です。
- タブ名
- この入力パラメーターは、移動中の表の名前を指定します。 このパラメーターには大/小文字の区別があり、データ・タイプは VARCHAR(128) です。
- 処置
- この入力パラメーターは、プロシージャーの実行アクションを指定します。
- キー
- この入力パラメーターは、ADMIN_MOVE_TABLE プロトコル表で「UPSERT」または削除を行うためのキーを指定します。
- value
- この入力パラメーターは、ADMIN_MOVE_TABLE プロトコル表に「UPSERT」する値を指定します。 このパラメーターのデータ・タイプは CLOB(10M) です。 このパラメーターを NULL または空ストリングにすることができます。
使用上の注意
ADMIN_MOVE_TABLE プロトコル表の変更可能キー値についての詳細が、ADMIN_MOVE_TABLE プロシージャーの『使用上の注意』のセクションに記載してあります。
例
この例では、このストアード・プロシージャーの基本的な呼び出しを取り上げています。ここでは、圧縮の値を更新し、ターゲット表のコピー処理に使用される特定の索引情報を除去するために呼び出します。
まず、ADMIN_MOVE_TABLE プロシージャーを呼び出して表移動プロセスを開始します。その後で、ADMIN_MOVE_TABLE プロトコル表の値を更新または削除するために、ADMIN_MOVE_TABLE_UTIL プロシージャーを呼び出します。
CALL SYSPROC.ADMIN_MOVE_TABLE('SVALENTI','T1','','','','','','','','','INIT')
次に、DEEP_COMPRESSION_SAMPLE 値を 30720 KB に更新します。CALL SYSPROC.ADMIN_MOVE_TABLE_UTIL('SVALENTI','T1','UPSERT',
'DEEPCOMPRESSION_SAMPLE','30720')
ここで、COPY_INDEXSCHEMA と COPY_INDEXNAME の値を削除します。CALL SYSPROC.ADMIN_MOVE_TABLE_UTIL('SVALENTI','T1','DELETE','COPY_INDEXSCHEMA','')
CALL SYSPROC.ADMIN_MOVE_TABLE_UTIL('SVALENTI','T1','DELETE','COPY_INDEXNAME','')
これらの変更後、メタ・テーブル内の新しい値を使用して ADMIN_MOVE_TABLE プロシージャーを続行します。CALL SYSPROC.ADMIN_MOVE_TABLE('SVALENTI','T1','','','','','','','','','COPY')
CALL SYSPROC.ADMIN_MOVE_TABLE('SVALENTI','T1','','','','','','','','','REPLAY')
CALL SYSPROC.ADMIN_MOVE_TABLE('SVALENTI','T1','','','','','','','','','SWAP')