1.16 DBMS_WMサブプログラムのカテゴリ

Workspace ManagerのApplication Program Interface(API)は、単一のPL/SQLパッケージDBMS_WMにあるPL/SQLサブプログラム(プロシージャおよびファンクション)で構成されています。

各サブプログラムは、この項で説明するカテゴリに論理的にグループ化できます。

ノート:

ほとんどのWorkspace Managerサブプログラムはプロシージャですが、ファンクションもあります。(ファンクションは値を戻しますが、プロシージャは値を戻しません。)

ほとんどのファンクションの名前は、Get で始まります(GetConflictWorkspaceおよびCreateSavepoint など)。

すべてのサブプログラムのリファレンス情報については、「DBMS_WMパッケージ: リファレンス」を参照してください。

1.16.1 表管理サブプログラム

表管理サブプログラムは、表に対する作業領域管理を使用可能および使用禁止にし、その他の表関連操作を実行します。

表1-8に、表の管理に使用できるサブプログラムを示します。

表1-8 表管理サブプログラム

プロシージャ 説明

EnableVersioning

表をバージョン対応にし、表が複数バージョンの行をサポートできるように、必要な構造を作成します。

DisableVersioning

バージョン対応表内に作成された行のサポート構造をすべて削除します。

SetWoOverwriteOFF

EnableVersioningプロシージャまたはSetWoOverwriteONプロシージャによって使用可能になったVIEW_WO_OVERWRITE履歴オプションを使用禁止にし、履歴オプションをVIEW_W_OVERWRITE(上書きを伴う)に変更します。

SetWoOverwriteON

SetWoOverwriteOFFプロシージャによって使用禁止になったVIEW_WO_OVERWRITE履歴オプションを使用可能にします。

BeginDDL

指定された表に対してDDL (データ定義言語)セッションを開始します。

CommitDDL

DDLセッション中に指定された表に対して行われたDDL変更をコミットし、DDLセッションを終了します。

RollbackDDL

DDLセッション中に指定された表に対して行われたDDL変更をロールバックし(取り消し)、DDLセッションを終了します。

RecoverAllMigratingTables

Workspace Managerの移行プロシージャが正常に実行されなかった場合、一貫性のない状態になっている表の移行プロセスを完了しようとします。

RecoverAllMigratingTables

Workspace Managerの移行プロシージャが正常に実行されなかった場合、一貫性のない状態になっているすべての表の移行プロセスを完了しようとします。

CopyForUpdate

バージョン対応表内のラージ・オブジェクト(LOB)列(BLOB、CLOBまたはNCLOB)を変更します。

Export

バージョン対応表からステージング表にデータ(すべての行、または複数のパラメータの組合せで限定された行)をエクスポートします。

Import

ステージング表から指定の作業領域内のバージョン対応表に、データ(すべての行、または複数のパラメータの組合せで限定された行)をインポートします。

1.16.2 作業領域管理サブプログラム

作業領域管理サブプログラムは、作業領域に対する操作を実行します。

表1-9に、作業領域の管理に使用できるサブプログラムを示します。

表1-9 作業領域管理サブプログラム

プロシージャ 説明

CreateWorkspace

データベース内に新しい作業領域を作成します。

GotoWorkspace

現行のセッションを指定された作業領域に移動します。

SetDiffVersions

2つのセーブポイントまたは2つの作業領域間のバージョン対応表における値の差異を検索します。差異を記述する行を様々なビューに作成します。

GetDiffVersions

SetDiffVersions操作が実行されたセッションの作業領域とセーブポイントのペアの名前を戻します。

MergeTable

作業領域内の表(すべての行、またはWHERE句で指定された行)に対する変更をその親作業領域に適用します。

MergeWorkspace

作業領域内のすべての変更をその親作業領域に適用します。また、オプションで、その作業領域を削除できます。

RollbackWorkspace

作業領域内のバージョン対応表に対するすべての変更を廃棄します。

RollbackTable

作業領域内の指定された表(すべての行、またはWHERE句で指定された行)に対するすべての変更を廃棄します。

RollbackToSP

指定されたセーブポイント以降に行われた作業領域内のバージョン対応表に対するすべての変更を廃棄します。

RefreshTable

作業領域に対し、その親作業領域内の表(すべての行、またはWHERE句に指定された行)に対するすべての変更を適用します。

RefreshWorkspace

作業領域に対し、その親作業領域内のすべての変更を適用します。

AlterWorkspace

作業領域の定義を変更します。

ChangeWorkspaceType

連続的にリフレッシュされない作業領域を連続的にリフレッシュされるように変更します。

RemoveWorkspace

作業領域に関連付けられたすべての行バージョンを廃棄し、作業領域を削除します。

RemoveWorkspaceTree

作業領域およびその子作業領域に関連付けられたすべての行バージョンを廃棄し、影響を受ける作業領域を削除します。

FreezeWorkspace

作業領域へのアクセスおよび作業領域内で変更を行うユーザーの権限を制限します。

UnfreezeWorkspace

作業領域にアクセスできるようにし、また作業領域に対する変更を有効にし、FreezeWorkspaceプロシージャによる処理を元に戻します。

CompressWorkspace

作業領域内の削除可能なセーブポイントを削除し、その作業領域のWorkspace Managerメタデータ構造を最小化します。

CompressWorkspaceTree

作業領域およびそのすべての子作業領域内の削除可能なセーブポイントを削除します。また、影響を受ける作業領域のWorkspace Managerメタデータ構造を最小化し、セーブポイントの削除によって不要となったデータを排除します。

IsWorkspaceOccupied

作業領域内にアクティブなセッションがあるかどうかを確認します。

CreateSavepoint

セッションの現行の作業領域を戻します。

SetMultiWorkspaces

指定された作業領域(1つまたは複数)をバージョン対応表の複数作業領域ビューで表示します。

GetMultiWorkspaces

バージョン対応表の複数作業領域ビューで参照できる作業領域の名前を戻します。

GetOpContext

現行のセッションに対する現行の操作のコンテキストを戻します。

AddAsParentWorkspace

複数の親を持つ作業領域環境で、作業領域を子作業領域に親作業領域として追加します。

RemoveAsParentWorkspace

複数の親を持つ作業領域環境で、作業領域を親作業領域として削除します。

1.16.3 セーブポイント管理サブプログラム

セーブポイント管理サブプログラムは、セーブポイントに関連する操作を実行します。

表1-10に、セーブポイントの管理に使用できるサブプログラムを示します。

表1-10 セーブポイント管理サブプログラム

プロシージャ 説明

CreateSavepoint

現行バージョンのセーブポイントを作成します。

GotoSavepoint

現行の作業領域内の指定されたセーブポイントに移動します。

GotoDate

現行の作業領域内の指定された日付および時刻またはそれに近い時点のセーブポイントに移動します。

GetSessionInfo

現行の作業領域およびセッション・コンテキストに関する情報を取得します。セッションの現行のセーブポイントまたはある時点を検索する場合に有効です。

AlterSavepoint

セーブポイントの定義を変更します。

DeleteSavepoint

バージョン対応表内のセーブポイントおよび関連する行を削除します。

1.16.4 権限管理サブプログラム

権限管理サブプログラムは、Workspace Managerの権限の付与および取消しを行います。

表1-11に、権限の管理に使用できるサブプログラムを示します。

表1-11 権限管理サブプログラム

プロシージャ 説明

GrantWorkspacePriv

ユーザー、ロールまたはPUBLICに作業領域レベルの権限を付与します。

RevokeWorkspacePriv

ユーザーおよびロールから作業領域レベルの権限を取り消します。

GrantSystemPriv

ユーザー、ロールまたはPUBLICにすべての作業領域に対する権限を付与します。

RevokeSystemPriv

ユーザーおよびロールからシステム・レベルの権限を取り消します。

GetPrivs

指定された作業領域に対して現行のユーザーが取得しているすべての権限のリストを戻します。このリストでは、権限がカンマで区切られます。

1.16.5 ロック管理サブプログラム

ロック管理サブプログラムは、Workspace Managerのロック操作を制御します。

表1-12に、ロックの管理に使用できるサブプログラムを示します。

表1-12 ロック管理サブプログラム

プロシージャ 説明

SetLockingON

現行のセッションに対してWorkspace Managerのロック操作を使用可能にします。

SetLockingOFF

現行のセッションに対してWorkspace Managerのロック操作を使用禁止にします。

SetWorkspaceLockModeON

指定された作業領域に対してWorkspace Managerのロック操作を使用可能にします。

SetWorkspaceLockModeOFF

指定された作業領域に対してWorkspace Managerのロック操作を使用禁止にします。

GetLockMode

現行のセッションのロック・モードを戻します。これによって、バージョン対応行、および前回のバージョン内の対応する行にアクセスできるかどうかが決まります。

LockRows

指定された表内のバージョン対応行、および親作業領域内のそれに対応する行へのアクセスを制御します。

UnlockRows

指定された表内のバージョン対応行、および親作業領域内のそれに対応する行にアクセスできるようにします。

1.16.6 競合管理サブプログラム

競合管理サブプログラムは、作業領域間における競合を検出し、解消します。

表1-13に、競合の管理に使用できるサブプログラムを示します。

表1-13 競合管理サブプログラム

プロシージャ 説明

SetConflictWorkspace

作業領域とその親作業領域の間に競合があるかどうかを判断します。

GetConflictWorkspace

SetConflictWorkspaceプロシージャを実行したセッションの作業領域の名前を戻します。

BeginResolve

競合解消セッションを開始します。

ResolveConflicts

作業領域間における競合を解消します。

CommitResolve

競合解消セッションを終了し、BeginResolveプロシージャの実行以降に作業領域内で行われたすべての変更を保存します(永続的な変更にします)。

RollbackResolve

競合解消セッションを終了し、BeginResolveプロシージャの実行以降に作業領域内で行われたすべての変更を廃棄します。

1.16.7 バルク・ロード・サポート・サブプログラム

バルク・ロード・サポート・サブプログラムは、バージョン対応表へのデータのバルク・ロードにSQL*Loaderを使用できるようにします。詳細は、「バージョン対応表へのバルク・ロード」を参照してください。

表1-14に、バルク・ロードのサポートに使用できるサブプログラムを示します。

表1-14 バルク・ロード・サポート・サブプログラム

プロシージャ 説明

GetBulkLoadVersion

BeginBulkLoadingプロシージャのコール時に指定するバージョン番号を戻します。

BeginBulkLoading

バージョン対応表のバルク・ロード処理を開始します。

CommitBulkLoading

バルク・ロードによる変更をコミットして、バージョン対応表のバルク・ロード処理を終了します。

RollbackBulkLoading

バルク・ロード操作中にバージョン対応表に対して行われた変更をロールバックします。