Hello Niall, We have two databases utilizing schema based replication (10.2.0.3, Linux - Oracle Streams) and for at least some of the tables (that are being replicated), we do not have any primary or unique or a substitute key in either of the databases and replication appears to be working fine. So, unless something is happening under the hood (that is supposedly not obvious - streams related), given what I am seeing in our environment, I would not agree with the second part of the Analyst's statement (i.e. So each table in a Streams environment should have a primary key, unique key constraints or a substitute key). -Rajeev On Mon, Nov 10, 2008 at 9:21 AM, Niall Litchfield <niall.litchfield@xxxxxxxxx> wrote: > All, > > I am being told by a support analyst at Oracle re Streams that Oracle must be > able to identify uniquely and match corresponding rows at different databases. So each table in a Streams environment should have a primary key, unique key constraints or a substitute key. > > This in addition to supplemental logging. Is this correct? If so, surely > this implies that streams is only useful in environments where tables are > guaranteed (by Oracle or the application(s) running against it) to be > unique. This seems a somewhat significant real-world disadvantage to me, > based on the applications that I see. I guess I sort of hoped that Oracle > might have used the ROWID to generated the LCR (in a way that I fully admit > I have spend no time at all thinking about). > > Niall Litchfield > Oracle DBA > http://www.orawin.info -- //www.freelists.org/webpage/oracle-l