Skip to main content
GennyDW
Bronze ⭐️⭐️⭐️
June 4, 2025
Question

Documentation of SQL statement.type in Nifi PutDatabaseRecord

Does anyone have experience using SQL value in statement.type for PutDatabaseRecord processor in Nifi?

It is undocumented as to how to format/parameterize this query correctly.  Use of ? or record path values both fail e.g.

INSERT INTO radius.sim_usage(id,sim_id,"ICCID",sim_month,sim_usage,"updatedAt",supplier_id)
VALUES(/id,/sim_id,/iccid,/sim_month,/sim_usage,/updatedAt,/supplier_id)
ON CONFLICT(id)
DO UPDATE SET
sim_usage =
CASE WHEN sim_month <> '${nowDate}'
THEN sim_usage = sim_usage - /sim_usage
ELSE sim_usage = /sim_usage
END

 

INSERT INTO radius.sim_usage(id,sim_id,"ICCID",sim_month,sim_usage,"updatedAt",supplier_id)
VALUES(?,?,?,?,?,?,?)
ON CONFLICT(id)
DO UPDATE SET
sim_usage =
CASE WHEN sim_month <> '${nowDate}'
THEN sim_usage = sim_usage - ?
ELSE sim_usage = ?
END

1 reply

DianaTorres
Community Manager
Community Manager
June 4, 2025

@GennyDW Welcome to the Cloudera Community!

To help you get the best possible solution, I have tagged our NiFi experts @MattWho @mburgess  who may be able to assist you further.

Please keep us updated on your post, and we hope you find a satisfactory solution to your query.

Translate
Regards, Diana Torres, Senior Community Moderator