Oracle8i Replication Management API Reference
Release 2 (8.1.6)

Part Number A76958-01

Library

Product

Contents

Index

Go to previous page Go to beginning of chapter Go to next page

Replication Management API Reference, 57 of 179


ADD_conflicttype_RESOLUTION procedure

These procedures designate a method for resolving an update, delete, or uniqueness conflict. You must call these procedures from the master definition site. The procedure that you need to call is determined by the type of conflict that the routine resolves.

Table 8-90 ADD_conflicttype_RESOLUTION Procedures
Conflict Type  Procedure Name 
update
 
ADD_UPDATE_RESOLUTION
 
uniqueness
 
ADD_UNIQUE_RESOLUTION
 
delete
 
ADD_DELETE_RESOLUTION
 

See Also:

Oracle8i Replication for more information about designating methods to resolve update conflicts, selecting uniqueness conflict resolution methods, and assigning delete conflict resolution methods. 

Syntax

DBMS_REPCAT.ADD_UPDATE_RESOLUTION (
   sname                  IN   VARCHAR2, 
   oname                  IN   VARCHAR2, 
   column_group           IN   VARCHAR2,
   sequence_no            IN   NUMBER,
   method                 IN   VARCHAR2, 
   parameter_column_name  IN   VARCHAR2 | DBMS_REPCAT.VARCHAR2s, 
   priority_group         IN   VARCHAR2     := NULL,
   function_name          IN   VARCHAR2     := NULL,
   comment                IN   VARCHAR2     := NULL);

DBMS_REPCAT.ADD_DELETE_RESOLUTION (
   sname                  IN   VARCHAR2, 
   oname                  IN   VARCHAR2, 
   sequence_no            IN   NUMBER,
   parameter_column_name  IN   VARCHAR2 | DBMS_REPCAT.VARCHAR2s, 
   function_name          IN   VARCHAR2,
   comment                IN   VARCHAR2     := NULL
   method                 IN   VARCHAR2     := 'USER FUNCTION');

DBMS_REPCAT.ADD_UNIQUE_RESOLUTION(
   sname                 IN   VARCHAR2, 
   oname                 IN   VARCHAR2, 
   constraint_name       IN   VARCHAR2,
   sequence_no           IN   NUMBER,
   method                IN   VARCHAR2, 
   parameter_column_name IN   VARCHAR2 | DBMS_REPCAT.VARCHAR2s, 
   function_name         IN   VARCHAR2     := NULL,
   comment               IN   VARCHAR2     := NULL);

Parameters

Table 8-91 ADD_conflicttype_RESOLUTION Procedure Parameters (Page 1 of 2)
Parameter  Description 
sname
 

Name of the schema containing the table to be replicated. 

oname
 

Name of the table for which you are adding a conflict resolution routine. 

column_group
 

Name of the column group for which you are adding a conflict resolution routine. Column groups are required for update conflict resolution routines only. 

constraint_name
 

Name of the unique constraint or unique index for which you are adding a conflict resolution routine. Use the name of the unique index if it differs from the name of the associated unique constraint. Constraint names are required for uniqueness conflict resolution routines only. 

sequence_no
 

Order in which the designated conflict resolution methods should be applied. 

method
 

Type of conflict resolution routine that you want to create. This can be the name of one of the standard routines provided with advanced replication, or, if you have written your own routine, you should choose USER FUNCTION, and provide the name of your routine as the FUNCTION_NAME argument. The methods supported in this release are: MINIMUM, MAXIMUM, LATEST TIMESTAMP, EARLIEST TIMESTAMP, ADDITIVE, AVERAGE, PRIORITY GROUP, SITE PRIORITY, OVERWRITE, and DISCARD (for update conflicts) and APPEND SITE NAME, APPEND SEQUENCE, and DISCARD (for uniqueness conflicts). There are no standard methods for delete conflicts. 

parameter_column_
name
 

Name of the columns used to resolve the conflict. The standard methods operate on a single column. For example, if you are using the LATEST TIMESTAMP method for a column group, then you should pass the name of the column containing the timestamp value as this argument. If your are using a USER FUNCTION, then you can resolve the conflict using any number of columns.

This argument accepts either a comma-separated list of column names, or a PL/SQL table of type DBMS_REPCAT.VARCHAR2. The single value '*' indicates that you want to use all of the columns in the table (or column group, for update conflicts) to resolve the conflict. If you specify '*', then the columns are passed to your function in alphabetical order. 

priority_group
 

If you are using the PRIORITY GROUP or SITE PRIORITY update conflict resolution method, then you must supply the name of the priority group that you have created.

See "Conflict Resolution" in Oracle8i Replication. If you are using a different method, you can use the default value for this argument, NULL. This argument is applicable to update conflicts only. 

function_name
 

If you selected the USER FUNCTION method, or if you are adding a delete conflict resolution routine, then you must supply the name of the conflict resolution routine that you have written. If you are using one of the standard methods, then you can use the default value for this argument, NULL

comment
 

This user comment is added to the DBA_REPRESOLUTION view. 

Exceptions

Table 8-92 ADD_conflicttype_RESOLUTION Procedure Exceptions
Exception  Description 
nonmasterdef
 

Invocation site is not the master definition site. 

missingobject
 

Specified object does not exist as a table in the specified schema using row-level replication. 

missingschema
 

Specified schema does not exist. 

missingcolumn
 

Column that you specified as part of the PARAMETER_COLUMN_NAME argument does not exist. 

missinggroup
 

Specified column group does not exist. 

missingprioritygroup
 

The priority group that you specified does not exist for the table. 

invalidmethod
 

Resolution method that you specified is not recognized. 

invalidparameter
 

Number of columns that you specified for the PARAMETER_COLUMN_NAME argument is invalid. (The standard routines take only one column name.) 

missingfunction
 

User function that you specified does not exist. 

missingconstraint
 

Constraint that you specified for a uniqueness conflict does not exist. 

notquiesced
 

Object group to which the specified table belongs is not quiesced. 

duplicateresolution
 

Specified conflict resolution method is already registered. 

duplicatesequence
 

The specified sequence number already exists for the specified object. 

invalidprioritygroup
 

The specified priority group does not exist. 

paramtype
 

Type is different from the type assigned to the priority group. 


Go to previous page Go to beginning of chapter Go to next page
Oracle
Copyright © 1996-2000, Oracle Corporation.

All Rights Reserved.

Library

Product

Contents

Index