Stuart, I think you can work this out by using Rule based transformation in Streams. It's outlined here: http://download.oracle.com/docs/cd/B19306_01/server.102/b14229/strms_transform.htm#CACIIJHJ and Metalink has examples on similar subject as well: *264035.1* *309575.1* --romas On 7/4/08, Stuart Blackburn <sblackbu@xxxxxxxxx> wrote: > > Hi, > > I'm looking for some advice on how to split lcr's into multiple tables. > > Here is a simplified example of what we need to do: > > Database D1 has tables T1,T2,T3 > Database D2 has tables T2,T3,T4,T5 > > According to our business rules nothing can be replicated to database D2 > until it reaches a certain status so tables T1,T2,T3 in database D1 > will already have been populated when it is time to replicate. > > When table T1 reaches the correct status in database D1 the record from > T1 needs to be > replicated and split into tables T4 and T5 in database D2. During this same > transaction the data in tables T2 and T3 in database D1 needs to be > replicated > to tables T2 and T3 in database D2 without any modifications. Tables T2 > and T3 > contain BLOB info. > > I've been experimenting with this using DBMS_STREAMS_MESSAGING.ENQUEUE > and DBMS_AQ.ENQUEUE procedures, but these procedures create user > enqueued messages. An apply process can only apply changes captured > from a capture process or user enqueued messages, but not both so if I > use any of those methods I need to create multiple processes and > multiple queues which is not desirable. I can't seem to find any > documentation on this other than manually constructing lcr's and > enqueuing them as user messages. > > Does anyone know if there are any Oracle functions on how to easily capture > changes to one table and have it apply the changes on multiple tables? Any > advice/documentation would be helpful. Thanks. > > Stuart > > > -- //www.freelists.org/webpage/oracle-l