Диалоговое окно «Связи внешнего ключа» (визуальные инструменты для баз данных)

Это диалоговое окно позволяет создавать и изменять связи между таблицами в базе данных. В связях внешнего ключа ограничения FOREIGN KEY работают с ограничениями PRIMARY KEY или UNIQUE для обеспечения ссылочной целостности указанных таблиц. Например, можно установить ограничение FOREIGN KEY на столбец ProductID в таблице Order_Details, чтобы значения этого столбца точно соответствовали существующим значениям столбца ProductID в таблице Products.

ПримечаниеПримечание

Если таблица опубликована для репликации, изменения схемы необходимо выполнять с помощью инструкции ALTER TABLETransact-SQL или объектов SMO. При изменении схемы с помощью конструктора таблиц или конструктора схем баз данных делается попытка удалить таблицу и создать ее повторно. Но поскольку нельзя удалять опубликованные объекты, изменения схемы не произойдет.

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

Параметры

  • Выбранные связи
    Выводит список существующих связей. Выберите связь, чтобы ее свойства отобразились в сетке справа. Если этот список пуст, то для этой таблицы не было определено ни одной связи.

  • Добавить
    Создает новую связь. Спецификации таблиц и столбцов должны быть заданы, иначе связь будет недопустима.

  • Удалить
    Удаляет связь, выбранную в списке Выбранные связи. Чтобы отменить добавление связи, удалите эту связь, нажав данную кнопку.

  • Общая категория
    Разверните, чтобы увидеть категории Проверить существующие данные при создании или повторном включении и Спецификации таблиц и столбцов.

  • Проверка существующих данных при создании и возобновлении
    Проверяет все существующие данные в таблице перед созданием или возобновлением ограничения относительно этого ограничения.

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

  • Базовая таблица внешнего ключа
    Показывает, какая таблица содержит столбец, действующий как внешний ключ в выбранной связи.

  • Столбцы внешних ключей
    Показывает, какой столбец действует как внешний ключ в выбранной связи.

  • Базовая таблица первичного или уникального ключа
    Показывает, какая таблица содержит столбец, действующий как первичный (или уникальный) ключ в выбранной связи.

  • Столбцы первичного или уникального ключа
    Показывает, какой столбец действует как первичный (или уникальный) ключ в выбранной связи.

  • Категория идентификаторов
    Разверните, чтобы увидеть поля свойств Имя и Описание.

  • Имя
    Показывает имя связи. Если создается новая связь, ей присваивается имя по умолчанию в зависимости от таблицы, отображаемой в активном окне в Конструкторе таблиц. Это имя всегда можно изменить.

  • Описание
    Описывает связь. Чтобы ввести более подробное описание, щелкните Описание и нажмите кнопку с многоточием (...) справа от поля свойства. При этом появится большее поле для записи текста.

  • Категория конструктора таблиц
    Разверните, чтобы увидеть данные для категорий Проверка существующих данных при создании и возобновлении и Включить использование для репликации.

  • Принудительное использование для репликации
    Показывает, использовать ли данное ограничение, когда агент репликации выполняет в таблице вставку, изменение или удаление. Дополнительные сведения см. в разделе Управление ограничениями, идентификаторами и триггерами с помощью параметра «NOT FOR REPLICATION».

  • Принудительное использование ограничения внешнего ключа
    Укажите, допустимы ли изменения данных столбцов связи, если при этом нарушится целостность связи внешнего ключа. Выберите Да, если нужно запретить такие изменения, и Нет, если нужно разрешить их.

  • Категория спецификаций INSERT и UPDATE
    Разверните, чтобы увидеть сведения о Правиле удаления и Правиле обновления связи.

  • Правило удаления
    Укажите, что произойдет при попытке пользователя удалить строку с данными, участвующую в связи внешнего ключа:

    • Нет действий.   Сообщение об ошибке информирует пользователя, что удаление недопустимо, и инструкция DELETE откатывается.

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

    • Присвоить NULL.   Задает значение, равное NULL, если все столбцы внешних ключей в таблице могут содержать значения NULL. Не применимо к SQL Server 2000.

    • Присвоить значение по умолчанию   Задает значение по умолчанию, определенное для данного столбца, если все столбцы внешних ключей в таблице имеют значения по умолчанию. Не применимо к SQL Server 2000.

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

    • Нет действий.   Сообщение об ошибке информирует пользователя, что обновление недопустимо, и инструкция UPDATE откатывается.

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

    • Присвоить NULL.   Задает значение, равное NULL, если все столбцы внешних ключей в таблице могут содержать значения NULL. Не применимо к SQL Server 2000.

    • Присвоить значение по умолчанию   Задает значение по умолчанию, определенное для данного столбца, если все столбцы внешних ключей в таблице имеют значения по умолчанию. Не применимо к SQL Server 2000.