Oracle9i Supplied PL/SQL Packages and Types Reference Release 1 (9.0.1) Part Number A89852-02 |
|
DBMS_WM , 29 of 52
This procedure applies changes to a table (all rows or as specified in the WHERE
clause) in a workspace to its parent workspace.
DBMS_WM.MergeTable( workspace IN VARCHAR2, table_id IN VARCHAR2 [, where_clause IN VARCHAR2 DEFAULT ''] [, create_savepoint IN BOOLEAN DEFAULT FALSE] [, remove_data IN BOOLEAN DEFAULT FALSE] [, auto_commit IN BOOLEAN DEFAULT TRUE]);
All data that satisfies the where_clause
in the version-enabled table table_name
in workspace
is applied to the parent workspace of workspace
.
Any locks that are held by rows being merged are released.
If there are conflicts between the workspace being merged and its parent workspace, the merge operation fails and the user must manually resolve conflicts using the <table_name>_CONF view. (Conflict resolution is explained in Oracle9i Application Developer's Guide - Workspace Manager.)
A table cannot be merged in the LIVE
workspace (because that workspace has no parent workspace).
A table cannot be merged or refreshed if there is an open regular transaction affecting the table.
An exception is raised if the user does not have access to table_id
, or the MERGE_WORKSPACE
privilege for workspace
or the MERGE_ANY_WORKSPACE
privilege.
The following example merges changes to the EMP
table (in the USER3
schema) where last_name = 'Smith'
in NEWWORKSPACE
to its parent workspace.
EXECUTE DBMS_WM.MergeTable ('NEWWORKSPACE', 'user3.emp', 'last_name = ''Smith''');
|
Copyright © 1996-2001, Oracle Corporation. All Rights Reserved. |
|