Создание составного внешнего ключа в среде SQL server management studio 2012

Я могу успешно создать составной первичный ключ в SQL server management studio 2012, выбрав два столбца (OrderId, CompanyId) и щелкните правой кнопкой мыши и установите в качестве первичного ключа. Но я не знаю, как создать внешний ключ в двух столбцах(OrderId, CompanyId) в другой таблице с помощью SQL server management studio 2012.

3 ответов


в Обозревателе объектов перейдите к таблице и выберите Keys > New Foreign Key в контекстном меню:

enter image description here

в появившемся диалоговом окне нажмите кнопку добавить для создания нового внешнего ключа:

enter image description here

дайте ему значимое имя, а затем нажмите на ... открыть окна:

enter image description here

заполните необходимые столбцы для родителя и ребенка таблицы, нажмите OK и ты молодец!

или гораздо проще и эффективнее - используйте скрипт T-SQL!

ALTER TABLE dbo.OtherTable
ADD CONSTRAINT FK_OtherTable_ParentTable
FOREIGN KEY(OrderId, CompanyId) REFERENCES dbo.ParentTable(OrderId, CompanyId)

Если открыть подменю для таблицы в списке таблиц в среде Management Studio, появится элемент Keys. Если щелкнуть правой кнопкой мыши, вы получите New Foreign Key как вариант. Если выбрать этот параметр, откроется диалог взаимосвязи внешнего ключа. В разделе (Общие) вы найдете Tables And Columns Specifications. Если я открою это, я могу выбрать несколько столбцов.


добавьте два отдельных внешних ключа для каждого столбца.