У меня есть сценарий SQL, который добавляет внешний ключ в таблицу, как показано ниже.
ALTER TABLE [security].[Pages] WITH NOCHECK
ADD CONSTRAINT [FK_Pages_PageClasses] FOREIGN KEY ([PageClassId]) REFERENCES [security].[PageClasses]([PageClassId]) ON DELETE NO ACTION ON UPDATE NO ACTION;
Иногда в таблице уже есть этот внешний ключ, поэтому при запуске из Management Studio отображается ошибка. Можно ли добавить запрос, чтобы проверить, существует ли ключ перед его применением? Есть лучший способ сделать это? Это должно работать для MS SQL 2005 и 2008.