Фактический вариант использования более сложен (и основан на шаблонном конвейере SCD Type 2), но, пытаясь отладить свою ошибку, я создал новый упрощенный поток данных следующего формата:
Источник данных (набор данных представляет собой таблицу базы данных SQL Azure с столбцом первичного ключа и несколькими другими столбцами NULLable)
Производный столбец (при создании нового столбца с именем "NewRowStatus"
устанавливается значениебуквенная строка 'Historic')
Alter Row (для одного условия «Update If» установлено значение true (), поэтому все строки будут обновляться)
Sink для одного и того же набора данныхмы начали с сопоставления "NewRowStatus"
со столбцом базы данных «Статус строки» и с моим первичным ключом в качестве столбца ключей, что позволяет обновлять.
Предварительный просмотр данных успешно выполняется для каждого шага в потоке данных, но когдаЯ запускаю весь поток данных через конвейер отладки и получаю следующую ошибку:
"error": {
"code": 400,
"message": "Job '[jobID] failed due to reason: DF-SYS-01 at Sink 'sink1': java.sql.BatchUpdateException: Invalid column name '{[My Key Column]}'.\njava.sql.BatchUpdateException: Invalid column name '{[My Key Column]}'...
(мои квадратные скобки)
Я пытался использовать разные (неключевые) столбцы дляпосмотреть, если это безумиеКакая-то разница, но пока мне не удалось ни одного успешного обновления.Я не уверен, что я упускаю что-то действительно очевидное, или это проблема с ADF, который все еще находится в предварительном просмотре, но любые мысли будут оценены.