我正在尝试在批处理后将批量数据插入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>
请指导
[请提供完整的脚本,说明如何显示SQL数据。通常,它具有您的值和sql值之间的映射。没有它,我只能猜测,我的猜测是jsonData应该不是jsonData。“雇员姓名”
[猜测]-如果没有正确的日志记录,我将无法确认-jsonData不存在。为避免此类问题,应为每个参数提供默认值。
希望它有帮助-在https://simpleflatservice.com创建Mulesoft应用程序>