【发布时间】:2020-06-22 13:53:57
【问题描述】:
[ {
"id" : 57592,
"code" : "village1023",
"created_by_id" : null,
"created_date" : "Tue Mar 31 23:08:47 IST 2020",
"l_village_name" : "village1023",
"modified_by_id" : 70806,
"modified_date" : "Tue Mar 31 23:08:47 IST 2020",
"name" : "village1023",
"status" : "{0}",
"taluk_id" : 386
} ]
关于如何将从 JSON 接收的值转换为“状态”的任何建议:对于位数据类型中的 MySQL 值“1”,“{0}”为“TRUE”。
【问题讨论】:
-
不清楚你需要什么。
-
在来自 CaptureChangeMySQL 处理器的输入 JSON 中,我得到 MySQL 值 1 的值 {0}。我需要将 JSON 值转换为“TRUE”并使用 PutDatabaseRecord 处理器将其插入目标表。我该如何掩饰这个。
-
我得到了预期的结果,我在表达式中犯了错误。它应该是“UpdateRecord”处理器中的 ${field.value:equals("{0}"):ifElse("TRUE","FALSE")}。
-
@daggett 我正在尝试创建 MySQL 的镜像数据库。为此,我使用“CaptureChangeMySQL”。在我的源数据库中插入或更新记录后,我将从“CaptureChangeMySQL”获取 JSON 流文件,其中 MySQL 中“状态”列的值为“{0}”,其数据类型为“BIT”。我试图在“UpdateRecord”处理器中将其转换为布尔值。它没有被转换,因为我在表达式 ${field.value:equals("{0}"):ifElse("TRUE","FALSE")} 中使用了“status”而不是“field.value”。我发现了问题并修复了它。
标签: apache-nifi