Uniqueidentifier is used to generate a
surrogate key[
^] and it contains both characters and numbers so it cannot be converted to any number data type.
If you want to convert it to something, you can use character datatypes, for example
nvarchar
. However, you normally shouldn't need to convert it to anything special since the only purpose of unique identifier is to identify a single record.
If you're looking for the .Net equivalent data type for parameters, you can use
SqlDbType.UniqueIdentifier
. See:
SqlDbType Enumeration[
^]
In my opinion keeping the primary key as an uniqueidentifier is an excellent choice, especially if replication is involved.