Updatable subscription in Transactional Replication

Hi guys,

I am trying to setup a Transactional Replication for my data. My publisher and distributor is MS-SQL 2000 server; while subscriber is on a Oracle server. All are locally installed. I have also setup the linked server connection and created the publication. Data is able to be replicated correctly onto my Oracle database.Big Smile

However, this time ard, I want my changes in the oracle database to be reflected back into the SQL database. So I had my publication re-setup with Updatable Subscription. I tried to test it out by making some changes in my SQL database, and my Distribution Agent failed, with error "Invalid HEX number".Sad

I believe this is due to the uniqueidentifier datatype created during my publication creation, where this GUIDCOL is being added by the wizard. I have tried to add a new column in my oracle schema with datatype RAW(16), but it does not help.

1. Can someone tell me how to store the uniqueidentifier in binary string format?ie. 'DD52AD13227C463D822D1D2CA0807CC' instead of 'DD52AD13-227C-463D-822D-1D2CA0F807CC'

2. Or is there another datatype that can be used in Oracle to store the uniqueidentifier?
Thank you!!
Cheers,
Kevin

[1321 byte] By [KevinKan] at [2008-1-28]
# 1
Kevin,

Updatable subsciptions can only be used with SQL Server Subscribers.

Michael Blythe
Technical Writer
SQL Server Replication


This posting is provided "AS IS" with no warranties, and confers no rights.

MichaelBlythe at 2007-9-9 > top of Msdn Tech,SQL Server,SQL Server Replication...
# 2
Michael Blythe wrote:
Kevin,

Updatable subsciptions can only be used with SQL Server Subscribers.

Michael Blythe
Technical Writer
SQL Server Replication


This posting is provided "AS IS" with no warranties, and confers no rights.

Hi Michael,

Does it means that Merge Replication can only be used with SQL Server Subscribers too?

On the other hand, is there a way to store uniqueidentifier in binary format rather than character format?

Thanks.
Cheers,
Kevin
--

KevinKan at 2007-9-9 > top of Msdn Tech,SQL Server,SQL Server Replication...
# 3

Merge replication supports SQL Server and Access Subscribers in 2000. In 2005, support for Access has been dropped in favor of Express. I'm not sure what to recommend for the data type issue -- in 2005 BOL, we list CHAR(38) as the mapping for uniqueidentifier.

Michael Blythe
Technical Writer
SQL Server Replication


This posting is provided "AS IS" with no warranties, and confers no rights.

MichaelBlythe at 2007-9-9 > top of Msdn Tech,SQL Server,SQL Server Replication...
# 4
Converting guid to string can be done this way:
1. Convert the guid to say nvarchar
2. Use substring to remove the '-'

You could easily write a function that can do this for you and store it in a string format.

MaheshDudgikar at 2007-9-9 > top of Msdn Tech,SQL Server,SQL Server Replication...
# 5
Ok. Thanks guys. Seems like I can only stick to a 1-way transactional replication with my Oracle subscriber then.

Thanks for the help once again. Smile

KevinKan at 2007-9-9 > top of Msdn Tech,SQL Server,SQL Server Replication...

SQL Server

Site Classified