У меня есть таблица Users, которая имеет два столбца: первичный ключ с именем UserID и другой столбец с именем UserName.
- UserID (int) PK
- Имя пользователя (varchar (256)
Они оба уникальны, но я решил по причинам использовать имя пользователя в качестве ссылки в других таблицах. Так, например, таблица заказов имеет ссылку на пользователя по имени пользователя, а не по идентификатору пользователя.
- Номер заказа
- UserName
Я хочу создать связь между всеми таблицами, которые ссылаются на имя пользователя и таблицу пользователей, чтобы получить возможность каскадного обновления / удаления в SQL Server.
Но SQL Server не позволяет мне создавать отношения в столбце без первичного ключа. Можно ли каким-либо образом получить функцию каскадного обновления / удаления без изменения таблицы пользователей, чтобы имя пользователя было основным ключом, а не идентификатором пользователя?
источник