Las propiedades fundamentales de una primary key son que el valor sea único y not null, en particular sobre los nulos, la norma ANSI SQL es clara: "..each column participating in the primary key is implicitly defined as NOT NULL..", por ejemplo:
Código:
1> create table t1 (id varchar(10), constraint pk1 primary key (id))
2> go
1> insert into t1 values (null)
2> go
Mensaje 515, Nivel 16, Estado 2, Servidor W-009, Línea 1
No se puede insertar el valor NULL en la columna 'id', tabla 'demo.dbo.t1'. La
columna no admite valores NULL. Error de INSERT.
Se terminó la instrucción.
1>
Saludos