In most real-world replication solutions, the default for this location identifier will not be the database name; ideally you will choose a numeric identifier (or small char column), since keeping your primary key as narrow as possible offers the best indexing performance, especially for clustered PKs.

While GUIDs, also know as unique identifiers, can also be used to ensure uniqueness, they have their own set of problems.

(For more information on using GUIDs as PKs, please refer to

id=2504.) When you create an identity column, you can specify a start value called a seed and an increment value called an increment. There are three caveats associated with identity columns: You can use any real number as a seed or increment; positive and negative numbers are valid, but fractional, decimal or imaginary numbers are not.

DBAs face several problems when replicating columns that contain the identity property.

Another option is to use a GUID column instead of an identity column.

Such solutions are frequently not scalable, however, and there are other issues with using a GUID column as well.

Script 4 in the code download illustrates how to implement this on pre-existing tables.

The Not For Replication clause will prevent the identity property from being enforced when a replication process performs the identity insert.

This article discusses three common problems DBAs are likely to encounter when columns have an identity property that will auto-increment its value when data is inserted.