UPDATE SQL无法在Node-RED Bluemix上运行

时间:2015-12-30 11:50:59

标签: sql sql-update ibm-cloud node-red

我有一个Node-RED应用程序,其UPDATE语句仅在Node-RED部署后第一次运行,在其他执行时UPDATE未“提交”。

SQL DB中的表(“SQL DB BN”):

CREATE TABLE CORRIDA (
  MASTER VARCHAR(10),
  ESTADO VARCHAR(10),
  PLAYER VARCHAR(10),
  PONTOS INT );

INSERT创建调试行:

INSERT INTO CORRIDA VALUES ("LMM", "INICIO", "LMM", 0);

Node-RED中的代码 - 单击inject执行UPDATE(在PONTOS列上设置一个随机数)并查看结果:

  

[{ “ID”: “ec​​3fff17.1cc7c8”, “类型”: “功能”, “Z”: “4d04a829.19941”, “姓名”: “”, “FUNC”:“msg.payload   = \“UPDATE CORRIDA SET PONTOS = \”+ Math.floor((Math.random()* 100)+ 1)\ n + \“WHERE PLAYER ='\”+ \“LMM \”+ \“'\” ; \ n \ nreturn msg;“,”输出“:”1“,”noerr“:0,”x“:391,”y“:546,”wire“:[[”90698116.09c58“,”a7bd54cc.d207b “]]},{” ID “:” ad39d58.3809428" , “类型”: “注射”, “Z”: “4d04a829.19941”, “姓名”: “”, “主题”: “”,“有效载荷“:””, “载荷类型”: “日期”, “重复”: “”, “crontab的”: “”, “一次”:假, “×”:215, “Y”:538, “线”:[ [ “ec3fff17.1cc7c8”]]},{ “ID”: “a7bd54cc.d207b”, “类型”: “调试”, “Z”: “4d04a829.19941”, “名称”: “”, “活性”:真, “控制台”: “假”, “完成”: “真”, “×”:850, “Y”:619, “线”:[]},{ “ID”: “90698116.09c58”,“类型“:” SQLDB   在“,”z“:”4d04a829.19941“,”service“:”SQL DB   BN”, “查询”: “”, “PARAMS”: “”, “姓名”: “”, “×”:581, “Y”:510, “线”:[[ “c76fde76.f446”]]} { “ID”: “c76fde76.f446”, “类型”:“SQLDB   在“,”z“:”4d04a829.19941“,”service“:”SQL DB BN“,”query“:”SELECT PLAYER,   PONTOS来自   CORRIDA;”, “PARAMS”: “”, “姓名”: “”, “×”:722, “Y”:540, “线”:[[ “a7bd54cc.d207b”]]}]

1 个答案:

答案 0 :(得分:0)

刚刚找到答案。 如果sqldb节点上的Query字段为空,它会查看有效负载并运行它并填写该字段...因此,只有在第一次运行时,节点才会查看有效负载,所有后续运行都会运行相同的查询。第一次运行的有效载荷。 (不太了解此功能的用处)。