Добавление или удаление внешних ключей
Добавление или удаление внешних ключей
Внешний ключ - это поле в одной таблице базы данных, ссылающееся на первичный ключ в другой таблице. Внешний ключ определяется как ограничение в связанном столбце таблицы базы данных.
При наличии ограничения по внешнему ключу поле должно быть либо пустым, либо значение должно указывать на существующее значение для первичного ключа в соответствующей таблице. Например, поле SiteUID в смене является внешним ключом, ссылающимся на предприятие UID. В результате значение для смены SiteUID должно быть либо пустым, либо соответствовать существующему значению UID для предприятия.
Ограничение внешнего ключа также предотвращает удаление строк в таблице базы данных, на которые ссылаются поля внешнего ключа. Например, если для смены SiteUID задано значение 5, то из-за ограничения внешнего ключа в поле SiteUID, которое ссылается на предприятие UID, предприятие UID со значением 5 не может быть удалено.
Внешние ключи определены как устаревшие для сущностей в схеме смены и команды.
Чтобы добавить внешний ключ в существующую таблицу базы данных, выполните следующие действия:
1. Перейдите к вещи базы данных, настроенной для вашей системы, например (PTC.SCA.SCO.PostgresDatabase или PTC.SCA.SCO.MSSQLDatabase).
2. В разделе Сервисы выполните сервис AddForeignKey со следующими входными данными:
dataShapeName: профиль данных для таблицы базы данных, в которую добавляется внешний ключ.
fieldName: поле в профиле данных, в которое добавляется ограничение для внешнего ключа.
referenceDataShapeName: профиль данных справочной таблицы базы данных.
referenceFieldName: имя поля, содержащего ссылочное значение.
3. Щелкните Выполнить.
Чтобы удалить внешний ключ, выполните следующие действия:
* 
Удалите только те внешние ключи, которые были добавлены ранее. Не удаляйте внешние ключи, которые определены как устаревшие.
1. Перейдите к вещи базы данных, настроенной для вашей системы, например (PTC.SCA.SCO.PostgresDatabase или PTC.SCA.SCO.MSSQLDatabase).
2. В разделе Сервисы выполните сервис RemoveForeignKey со следующими входными данными:
dataShapeName: профиль данных для таблицы базы данных, из которой удаляется внешний ключ.
fieldName: поле в профиле данных, в котором удаляется ограничение для внешнего ключа.
3. Щелкните Выполнить.