Home Forums SQL Server 7,2000 Replication SQL Merge replication disorder on mergered process. RE: SQL Merge replication disorder on mergered process.

  • Finally i found the problem but not the solution for sql2000 versions.

    Its in the definition field for rowguidcol in sql2000 this unique assignament its aleatory not in the same way that insertions.

    In sql 2000 the field rowguidcol its declare like this "newid()"

    ...but in versions 2005 and later the field rowguidcol its declare with this other function: newsequentialid() (....to better....)

    Try this (over sql 2005 or later vers.):

    DECLARE @t TABLE (

    GuidCol UNIQUEIDENTIFIER DEFAULT newid() ROWGUIDCOL,

    IDENTITYCL INT IDENTITY(1,1),

    data VARCHAR(60) )

    INSERT INTO @t (data) SELECT 'test'

    INSERT INTO @t (data) SELECT 'test1'

    INSERT INTO @t (data) SELECT 'test2'

    INSERT INTO @t (data) SELECT 'test3'

    INSERT INTO @t (data) SELECT 'test4'

    SELECT $rowguid,$IDENTITY FROM @t order by GuidCol

    DECLARE @t2 TABLE (

    GuidCol UNIQUEIDENTIFIER DEFAULT newsequentialid() ROWGUIDCOL,

    IDENTITYCL INT IDENTITY(1,1),

    data VARCHAR(60) )

    INSERT INTO @t2 (data) SELECT 'test'

    INSERT INTO @t2 (data) SELECT 'test1'

    INSERT INTO @t2 (data) SELECT 'test2'

    INSERT INTO @t2 (data) SELECT 'test3'

    INSERT INTO @t2 (data) SELECT 'test4'

    SELECT $rowguid,$IDENTITY FROM @t2 order by GuidCol

    you can see the generation rowguid field used by merge its according with the insertion not aleatory.

    The problem its to solve this in sql2000 maybe some other similar func newid().