What should RowGuid be set to?


Author
Message
Peter Jones
Peter Jones
StrataFrame User (392 reputation)StrataFrame User (392 reputation)StrataFrame User (392 reputation)StrataFrame User (392 reputation)StrataFrame User (392 reputation)StrataFrame User (392 reputation)StrataFrame User (392 reputation)StrataFrame User (392 reputation)StrataFrame User (392 reputation)
Group: Forum Members
Posts: 386, Visits: 2.1K
Hi,
I'm recreating test set of tables from an existing database into DDT. We use GUIDs throughout as the PK for each table and I notice the tables created by the DDT all have their RowGuid property set to No whereas the current tables are all set to Yes. The defualt value for the PKs are are to (newid()).

In all original tables we set RowGuid to Yes because that, is indeed, what the column is however I not sure what would have happened had we said No.

My question is: should I change all the settings in DDT so that all out GUID PK's have a RowGuid value of Yes?

TIA - Peter

Trent Taylor
Trent Taylor
StrataFrame Developer (7.1K reputation)StrataFrame Developer (7.1K reputation)StrataFrame Developer (7.1K reputation)StrataFrame Developer (7.1K reputation)StrataFrame Developer (7.1K reputation)StrataFrame Developer (7.1K reputation)StrataFrame Developer (7.1K reputation)StrataFrame Developer (7.1K reputation)StrataFrame Developer (7.1K reputation)
Group: StrataFrame Developers
Posts: 6.6K, Visits: 6.9K
Peter,

I am sorry but I am confused by your post.  The DDT has full support to allow you to create GUID PKs.  I do not understand what you are trying to do here.  What do you mean by the following statement?

We use GUIDs throughout as the PK for each table and I notice the tables created by the DDT all have their RowGuid property set to No whereas the current tables are all set to Yes.

Peter Jones
Peter Jones
StrataFrame User (392 reputation)StrataFrame User (392 reputation)StrataFrame User (392 reputation)StrataFrame User (392 reputation)StrataFrame User (392 reputation)StrataFrame User (392 reputation)StrataFrame User (392 reputation)StrataFrame User (392 reputation)StrataFrame User (392 reputation)
Group: Forum Members
Posts: 386, Visits: 2.1K
Hi,

I probably made my question sound more complex than it should. Let me rephrase it:

When I set the primary key for a table definition in DDT to GUID when the table is created in SQL Server 2005 the value for the RowGUID property is set to No. I don't really understand what this property actually does and I would like confirmation that a RowGUID of No is correct.

Cheers, Peter

StrataFrame Team
S
StrataFrame Developer (3.1K reputation)StrataFrame Developer (3.1K reputation)StrataFrame Developer (3.1K reputation)StrataFrame Developer (3.1K reputation)StrataFrame Developer (3.1K reputation)StrataFrame Developer (3.1K reputation)StrataFrame Developer (3.1K reputation)StrataFrame Developer (3.1K reputation)StrataFrame Developer (3.1K reputation)
Group: StrataFrame Developers
Posts: 3K, Visits: 2.5K
Yes, the setting of RowGuid=No is correct for a GUID pk.  The RowGuid is used by SQL Server replication to uniquely identify rows across replicated databases (i.e. you have have two records with the same PK on different servers and when you replicate one database into the other, SQL Server will handle it).  So, the RowGuid property of a column is independent from the primary key.  Generally, when you use replication and a GUID pk, you can make them the same column.
Peter Jones
Peter Jones
StrataFrame User (392 reputation)StrataFrame User (392 reputation)StrataFrame User (392 reputation)StrataFrame User (392 reputation)StrataFrame User (392 reputation)StrataFrame User (392 reputation)StrataFrame User (392 reputation)StrataFrame User (392 reputation)StrataFrame User (392 reputation)
Group: Forum Members
Posts: 386, Visits: 2.1K
Hi Ben,

Thanks for that. Actually this is interesting because the reason we use GUIDs is that the app does support replication. So, in this case, should we be changing the RowGUID value to Yes?

Cheers, Peter

StrataFrame Team
S
StrataFrame Developer (3.1K reputation)StrataFrame Developer (3.1K reputation)StrataFrame Developer (3.1K reputation)StrataFrame Developer (3.1K reputation)StrataFrame Developer (3.1K reputation)StrataFrame Developer (3.1K reputation)StrataFrame Developer (3.1K reputation)StrataFrame Developer (3.1K reputation)StrataFrame Developer (3.1K reputation)
Group: StrataFrame Developers
Posts: 3K, Visits: 2.5K
Replication requires that all tables being replicated have a RowGuid somewhere on the table, so yeah, I would go ahead and turn it on on your PK columns... there's no reason to have another 16 bytes per record taken up by another GUID when you already have one Smile
GO

Merge Selected

Merge into selected topic...



Merge into merge target...



Merge into a specific topic ID...




Similar Topics

Reading This Topic

Login

Explore
Messages
Mentions
Search