Моя структура таблицы выглядит следующим образом:Таблица с встроенным кластеризованным идентификатором и основным ключом NVarChar - к какому из них я присоединяюсь?
USER:
UserId int - clustered index & identity
UserName nvarchar - PK
Name nvarchar
Location nvarchar
ТИПА ПОТРЕБИТЕЛЯ РЕГИСТРИРУЙТЕСЬ
UserName nvarchar - PK
UserTypeId int - PK
USER TYPE
UserTypeId int - PK
Name nvarchar
Первоначально мой User
таблица не имеет UserId
и я использовал UserName
в качестве первичного ключа, а также идентичности и кластерных колонков, но это причиняло мне проблемы фрагментации, поэтому я добавил UserId
и установить его на кластерный идентификатор индекса.
Так вот мне интересно, если мне нужно изменить мой присоединиться таблицей UserName
столбца в UserId
, как это личность таблицы, и я думаю, что может повысить производительность, или это лучше оставить его на UserName
, потому что это первичный ключ?
Я пробовал искать в Google ответ на этот вопрос, но я не могу придумать ничего подходящего.