Да - это поведение SQL Server по умолчанию.
Так не должно быть - если вы создаете свой ПК с использованием сценария T-SQL, вы также можете сделать его некластеризованный PK и поместите ключ кластеризации в другой столбец.
ALTER TABLE dbo.YourTable
ADD CONSTRAINT PK_YourTable
PRIMARY KEY NONCLUSTERED(FirstName)
CREATE CLUSTERED INDEX CIX_YourTable
ON dbo.YourTable(SomeOtherColumn)
В этом случае FirstName
будет (некластеризованным) первичным ключом вашей таблицы, тогда как SomeOtherColumn
будет ключом кластеризации для той же таблицы.