Самый быстрый способ найти ForeignKey связан с какой таблицей в Management Studio? - PullRequest
0 голосов
/ 15 декабря 2009

Интересно, есть ли более быстрый способ для этого:

"У меня открыта Management Studio, и передо мной стоит таблица Db с гривами столбцов. Я знаю, что поле FK_SomeTable - это ForeignKey. Но я не знаю, что это FK для какой таблицы. И мне нужно научиться этому. "

Итак, обычно я открываю «Отношения» этой таблицы, иду по одному в списке, который обрамлен ужасно узким окном, и пытаюсь найти его там, что немного скучно и теряет время.

Я также не хочу запрашивать системные таблицы.

Разве нет лучшего и более быстрого пути? Должно быть, не так ли?

Спасибо

Ответы [ 3 ]

1 голос
/ 15 декабря 2009

Как насчет этого запроса? Вы можете перейти к окну запроса и быстро выполнить его:

SELECT
    name,
    OBJECT_NAME(parent_object_id) 'Parent Table',
    OBJECT_NAME(referenced_object_id) 'Referenced Table'
FROM sys.foreign_keys

Дает вам имя FK и две соответствующие таблицы.

Существует также представление системного каталога sys.foreign_key_columns, в котором при необходимости можно получить информацию о столбце.

0 голосов
/ 15 декабря 2009

Ну, я обычно использую проводник объектов и иду к нужной таблице, а затем просматриваю раздел «Ключи».Вы можете расширить проводник объектов, чтобы увидеть полное имя ключа.Если он назван правильно, он, вероятно, содержит имя таблицы первичного ключа и таблицы внешнего ключа.Если нет, вы можете написать сценарий, чтобы увидеть.Мне пришлось искать, чтобы найти это окно отношений, о котором вы говорили, потому что я никогда не использовал бы окно дизайна, когда мы записываем все изменения.

0 голосов
/ 15 декабря 2009

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

...