Mule4 Массовая вставка после карты в Dataweave с сообщением об ошибке для поля, содержащего несколько объектов

Я пытаюсь вставить объемные данные в mssql после пакетной обработки.

Ниже приведены входные данные для компонента массовой вставки в Mule4: [ { "schemaId": 311, "createDT": "2019-04-29 04:22:51.535", "jsonData": { "Employee Name": "Becky Forgey" } }, { "schemaId": 311, "createDT": "2019-04-29 04:22:51.536", "jsonData": { "Employee Name": "sahana" } } ] Запрос к базе данных:

INSERT INTO [test].[dbo].[EmployeeData] (SchemaID,CreateDatetime,JsonData) VALUES (:schemaId,:createDT,:jsonData)

Параметр INPUT - это полезная нагрузка.

Если я отправляю строковое значение для jsonData, оно вставляется, но результат пакета состоит из нескольких записей, и я отображаю его в dataweave.

Получение ошибки ниже, если я попытаюсь вставить выше json:

Message               : The conversion from UNKNOWN to NVARCHAR is unsupported.
Error type            : DB:QUERY_EXECUTION
Element               : test-mapFlow/processors/5 @ test-map:test-map.xml:41 (Bulk insert)
Element XML           : <db:bulk-insert doc:name="Bulk insert" doc:id="98f8b9a0-b3d2-4beb-a31c-9f76af7f1447" config-ref="Database_Config">
<db:sql>INSERT INTO [rq].[dbo].[EmployeeMasterData] (SchemaID,CreateDatetime,JsonData) VALUES (:schemaId,:createDT,:jsonData)</db:sql>
</db:bulk-insert>

Пожалуйста, направьте


person user3073887    schedule 29.04.2019    source источник


Ответы (1)


Пожалуйста, предоставьте полный сценарий того, как вы представляете данные для SQL. Обычно у него есть сопоставление между вашими значениями и значениями sql. Без него я могу только догадываться, и я предполагаю, что вместо jsonData ir должно быть jsonData. "Имя сотрудника"

Еще одна догадка - я не могу подтвердить это без надлежащего ведения журнала - jsonData отсутствует. Чтобы избежать таких проблем, для каждого параметра должно быть указано значение по умолчанию.

В общем - старайтесь избегать множественных преобразований или делайте их на одной платформе как можно ближе к концу https://simpleflatservice.com/mule4/AvoidCoversionsOrMakeThemNative.html

person Alex    schedule 08.04.2020