In this case, the UPDATE does not update anything.

The row to be updated differs in one or more of its columns If one of the values expected to be present has been changed by some other user, an update conflict occurs.

At remote databases, the update takes place regardless of the values in the row.

At the consolidated database, SQL Remote allows conflict resolution operations to take place. Conflict resolution operations are held in a trigger or stored procedure, and run automatically when a conflict is detected.

In Adaptive Server Anywhere, the conflict resolution trigger runs before the update, and the update proceeds when the trigger is finished. In Adaptive Server Enterprise, the conflict resolution procedure runs after the update has been applied.

A table without a primary key or uniqueness constraint refers to all

columns in the WHERE clause of replicated updates When two users update the same row, replicated updates will not update anything and databases will become inconsistent. All replicated tables should have a primary key or uniqueness constraint and the columns in the constraint should never be updated.

Replication of procedures

Any replication system is faced with a choice between two options when replicating a stored procedure call:

Replicate the procedure call A corresponding procedure is executed at the replicate site, or

Replicate the procedure actions The individual actions (INSERTs, UPDATEs, DELETEs and so on) of the procedure are replicated.

SQL Remote replicates procedures by replicating the actions of a procedure.

The procedure call is not replicated.

Replication of triggers

 

Trigger replication in SQL Remote is different for the Adaptive Server

 

Enterprise Message Agent and the Adaptive Server Anywhere Message

 

Agent.

Trigger replication from

From Adaptive Server Enterprise, trigger actions are replicated. You must

Adaptive Server

ensure that triggers are not fired in the remote Adaptive Server Anywhere

Enterprise

databases. If the trigger were fired, its actions would be executed twice.

80

Page 98
Image 98
Sybase DC38133-01-0902-01 Replication of procedures, Replication of triggers, Procedure call is not replicated, Agent