При копировании текущей версии (которая не зафиксирована) получена ошибка: 547 для конфликта оператора вставки - PullRequest
0 голосов
/ 13 марта 2020

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

547: оператор INSERT конфликтует с ограничением CHECK «ck_tbl_5_8_HR_ChildType_ID». Конфликт произошел в базе данных «MDS_Production», таблица «mdm.tbl_5_8_HR»., @Errornumber = 547, @errorprocedure = ««, идентификатор корреляции строки 2: 7923e8be-e1fa-4ca9-a81d-e560b24deda9

1006 * Я должен сказать, что если я копирую любую другую версию (которая проверена), то я не вижу никаких проблем. Я успешно могу создать версию.

Код для ограничения:

USE [MDS_Production]

GO

ALTER TABLE [mdm].[tbl_5_8_HR]  WITH CHECK ADD  CONSTRAINT [ck_tbl_5_8_HR_ChildType_ID] CHECK  (([ChildType_ID]=(1) AND [Child_EN_ID] IS NOT NULL AND [Child_HP_ID] IS NULL OR [ChildType_ID]=(2) AND [Child_HP_ID] IS NOT NULL AND [Child_EN_ID] IS NULL))

GO

ALTER TABLE [mdm].[tbl_5_8_HR] CHECK CONSTRAINT [ck_tbl_5_8_HR_ChildType_ID]

GO

Я проверил таблицу mdm.tbl_5_8_HR, чтобы убедиться, что какая-либо запись не соответствует этому условию.

Я обнаружил, что в совокупности таблиц есть все записи в соответствии с логиками ограничений c.

Следующие таблицы являются основой для заполнения флагов Child_EN_ID и Child_HP_ID в таблице mdm.tbl_5_8_HR.

[MDS_Production]. [Mdm]. [Tbl_5_8_HP] - Родитель элементов измерения разделения

[MDS_Production]. [Mdm]. [Tbl_5_8_EN] - Элементы уровня дитя измерения измерения дивизии

Я новичок в MDS. Может ли кто-нибудь помочь здесь о том, как отладить эту ошибку?

Пожалуйста, не стесняйтесь, если вам нужна дополнительная информация.

Дхарав

...