0

我在 IBM Cloud Functions / OpenWhisk 中编写了一个基于 Node.js 的操作。该操作从 Db2 检索数据。当我没有参数标记时,查询有效。当我使用如下所示的参数并传入时,{"confname" : "IDUGEMEA2018" }它会遇到错误并引发异常。

为什么?需要改变什么?

var ibmdb = require('ibm_db');

function queryConferences(dsn, confname) { 
 try {    
    var conn=ibmdb.openSync(dsn);
    var data=conn.querySync("select shortname, location, begindate, enddate, uri from conference where shortname=?", confname);
    conn.closeSync();
    return {result : data};
 } catch (e) {
     return { dberror : e }
 }
}

function main({confname, __bx_creds: {dashDB:{dsn}}}) {
    return queryConferences(dsn,confname);
}
4

1 回答 1

1

它失败了,因为bindingParameters需要一个数组。我让它通过以下方式工作:

{"confname" : ["IDUGEMEA2018"] }

在 CLI 中,我使用以下内容对其进行了测试:

bx wsk action invoke myAction -p confname "[\"IDUGEMEA2018\"]" -r
于 2018-01-24T12:49:33.900 回答