Почему мои недавно созданные отношения FK не отображаются в проводнике объектов? - PullRequest
8 голосов
/ 20 февраля 2011

Я только что добавил таблицу «PackageItems» в существующую базу данных SQL Server 2008 R2. Я работаю в SQL Server Management Studio. После создания новой таблицы я создал связь между этой таблицей и другой таблицей под названием «Пакет». Отношение FK_PackageItems_Package делает первичный ключ таблицы Package (PackageID) внешним ключом в моей новой таблице PackageItems. Обе таблицы имеют общий столбец с именем PackageID (int, а не null).

Мой вопрос следующий. Первичные и внешние ключи для каждой другой таблицы в базе данных четко обозначены на панели «Обозреватель объектов» в SSMS. Я вижу золотые или серые ключи рядом с колоннами, а также я вижу PK или FK в скобках рядом. Но мои недавно созданные отношения (FK_PackageItems_Package) не представлены таким образом. Я сделал что-то не так?

Обратите внимание, что для создания отношений FK я вошел в представление конструктора для PackageItems, щелкнул значок Отношения, нажал кнопку Добавить, выбрал кнопку «...» рядом с «Спецификация таблиц и столбцов». Затем в появившемся окне я выбрал Package в качестве таблицы первичного ключа и PackageID. И я выбрал PackageItems и PackageID для своей таблицы и столбца внешнего ключа.

Надеюсь, это не слишком глупый вопрос. Заранее спасибо за внимание.

Ответы [ 2 ]

11 голосов
/ 22 июля 2016

Когда вы откроете диалоговое окно Create Foreign Key, вы заметите, что GUI добавляет окно дизайна таблицы.После настройки ключей и закрытия окна необходимо также сохранить дизайн таблицы.

1 голос
/ 03 марта 2015

Возможно, возникла проблема при использовании представления конструктора для создания внешнего ключа.Если я пытаюсь создать внешний ключ с представлением GUI, он не создается.Если я создаю его с помощью сценария, он делает.

Чтобы проверить, был ли создан внешний ключ или нет, вы можете использовать sp_help [TableName].

...