Nifi ConvertJsonToSQL - 将 json 对象保存为数据库列值

Nifi ConvertJsonToSQL - Save json object as a db column value

ConvertJsonToSQL 的描述说“如果字段映射到 JSON 对象,则该 JSON 对象将被解释为文本”。 所以我正在尝试保存 json 文本“{ “dateEndM”:“2021-12-14 00:00:00.0”, “dateEndY”:“2022-01-11 00:00:00.0” }”进入数据库字段“InboundData”。 输入:

{
  "Code" : "27037834",
  "ProductID" : "2",
  "CalculationStatusId" : "1",
  "SystemCode" : "aCRM",
  "InboundData" : {
    "dateEndM" : "2021-12-14 00:00:00.0",
    "dateEndY" : "2022-01-11 00:00:00.0"
  }
}

输出sql“插入计算(代码、ProductId、CalculationStatusId、SystemCode、InboundData)值(?、?、?、?、?)”值:

sql.args.1.type
-9
sql.args.1.value
27037834
sql.args.2.type
4
sql.args.2.value
2
sql.args.3.type
4
sql.args.3.value
1
sql.args.4.type
-9
sql.args.4.value
aCRM
sql.args.5.type
-9
sql.args.5.value
Empty string set

为什么InboundData的sql.args.5.value为空? 如何将 json 对象保存为数据库中的文本? 谢谢

处理器存在未解决的问题 ConvertJsonToSQL NIFI-4359

使用 EvaluateJsonPath 的可能解决方法 -> ConvertJsonToSQL -> UpdateAttribute:

EvaluateJsonPath

  • Destination: flowfile-attribute
  • Return Type: json
  • InboundData: $.InboundData

UpdateAttribute

  • sql.args.5.value: ${InboundData}