У меня есть стол, назовем его Users
. Эта таблица имеет первичный ключ, называемый Id
. Несмотря на наличие Id
в качестве первичного ключа (уникальный кластеризованный), он имеет другой индекс (уникальный некластерный) в том же столбце (Id
).Как удалить уникальный индекс, на который ссылаются внешние ключи?
Я хотел бы отказаться от этого ограничения, но внешние ключи ссылаются на этот уникальный некластеризованный индекс, и я получаю ошибку The constraint ... is being referenced by table...
.
Каков наилучший способ отказаться от такого индекса? У вас есть какие-либо сценарии, которые отбрасываются, что-то делают и воссоздают внешний ключ в определенном столбце в конкретной таблице? Существует много внешних ключей, поэтому было бы неплохо, если бы я мог сделать это автоматически. Я мог бы использовать INFORMATION_SCHEMA и другой системный объект для извлечения информации об этих ключах, но я не хочу писать, что уже было написано или может быть сделано другим способом.
Этот скрипт лучше, чем Andomar. Он воссоздает действие CASCADE и SET NULL. – LukLed
@LukLed: Рад вас одобрить ;-) –
Не могли бы вы предоставить сценарий здесь? Благодарю. –