Создание внешнего ключа (Foreign Key) с помощью SQL-редактора в Платформе "ШЕРП"
Внешний ключ (Foreign Key) — это столбец (или группа столбцов) таблицы, используемый в реляционной базе данных для связи данных между таблицами.
Связь создается между двумя таблицами, чтобы связать строки одной таблицы со строками другой.
Создание внешнего ключа произведем с помощью SQL-редактора Платформы на примере таблицы "dbo.AccessCard" из ИС "Айтишник".
Откроем SQL-редактор Платформы, в папке "UserTables" выделим курсором таблицу "dbo.AccessCard" и по пункту контекстного меню "Дизайнер таблицы" отобразим окно "Дизайнер таблицы Базы Данных":
Окно "Дизайнер таблицы Базы Данных"
Как видно из рисунка, поле "IdAccessCard" (ИД карты доступа) является первичным ключом таблицы, имеет тип "uniqueidentifier". В таблице также есть поле "IdEmployee" (ИД сотрудника, которому принадлежит карта), также имеет тип "uniqueidentifier". Данное поле является первичным ключом таблицы "dbo.Employee".
Создадим внешний ключ для таблицы "dbo.AccessCard". Для этого в панели инструментов нажмем пиктограмму "Создание связей":
Пиктограмма "Создание связей"
Откроется окно "Настройка связей таблицы":
Окно "Настройка связей таблицы"
В левом фрейме "Список связей" в атрибуте "Таблица БД" отображается название исходной таблицы "dbo.AccessCard". В правом фрейме "Поля связи" выберем таблицу "dbo.Employee" для связи, нажав на кнопку "Выбор таблицы для настройки связи с текущей таблицей БД":
Выбор таблицы для настройки связи с текущей таблицей БД
Выделим курсором в списке таблицу "dbo.Employee" и нажмем "Выбор". В левом фрейме "Список связей" появится связь "FK_AccessCard_Employee" - внешний ключ связи таблицы "dbo.AccessCard" с таблицей "dbo.Epmloyee".
Внешний ключ связи таблицы "dbo.AccessCard" с таблицей "dbo.Epmloyee"
В правом фрейме "Поля связи" в колонке "Поле таблицы" укажем поле "IdEmployee" из таблицы "dbo.AccessCard", в колонке "Поле связи" укажем поле "IdEmployee" из таблицы "dbo.Employee", выбрав их из списков выбора:
Фрейм "Поле связи" с введенными значениями в колонках "Поле таблицы" и "Поле связи"
На форме "Настройка связей таблицы" нажмем "Сохранить", далее на форме "Дизайнер таблицы Базы данных" также нажмем "Сохранить". Отобразится сообщение "Выполнение скриптов для таблицы dbo.AccessCard в Базе данных ITWorker" успешно завершено":
Сообщение "Выполнение скриптов для таблицы dbo.AccessCard в Базе данных ITWorker" успешно завершено"
Для проверки создания внешнего ключа перейдем в папку "UserTables" и убедимся в появлении внешнего ключа "FK_AccessCard_Employee (dbo.Employee)" в папке "Foreign Keys" для таблицы "dbo.AccessCard":
Внешний ключ "FK_AccessCard_Employee (dbo.Employee)" в папке "Foreign Keys" для таблицы "dbo.AccessCard"
Внешний ключ создан.
0 комментариев