IBM Cloud Functions:尝试连接到 DB2 时出现 SQL 语法错误
IBM Cloud Functions: SQL syntax error while trying to connect to DB2
我在 IbM Cloud Fucntions 中创建了一个操作以将数据插入 DB2。
我使用 IBM 提供的凭据声明变量 DSN。
var dsn = "DATABASE=BLUDB;HOSTNAME=dashdb-entry-yp-dal09-08.services.dal.bluemix.net;PORT=50000;PROTOCOL=TCPIP;UID=dash100113;PWD=*******"
我收到这个错误:
message : "[IBM][CLI Driver] CLI0199E Invalid connection string attribute. SQLSTATE=08001"
这是我用来插入数据的代码:
function insertClient(dsn) {
try {
var conn=ibmdb.openSync(dsn);
var data=conn.querySync("insert into client (name) values ('jamie')");
conn.closeSync();
return {result : data};
} catch (e) {
return { dberror : e }
}
}
我希望连接并插入数据。
有人能帮忙吗?
首先,出于安全原因,您不应对凭据进行硬编码。您可以使用 IBM Cloud Functions 命令将服务绑定到您的操作。您可以找到此 tutorial that uses functions with various Db2 operations 中提供的代码示例。通过避免硬编码凭据,您也不会 运行 复制和粘贴错误。
其次,all connection attributes end with a ";"。在密码属性后加一
第三,尝试使用 SSL 连接而不是常规连接。
我在 IbM Cloud Fucntions 中创建了一个操作以将数据插入 DB2。
我使用 IBM 提供的凭据声明变量 DSN。
var dsn = "DATABASE=BLUDB;HOSTNAME=dashdb-entry-yp-dal09-08.services.dal.bluemix.net;PORT=50000;PROTOCOL=TCPIP;UID=dash100113;PWD=*******"
我收到这个错误:
message : "[IBM][CLI Driver] CLI0199E Invalid connection string attribute. SQLSTATE=08001"
这是我用来插入数据的代码:
function insertClient(dsn) {
try {
var conn=ibmdb.openSync(dsn);
var data=conn.querySync("insert into client (name) values ('jamie')");
conn.closeSync();
return {result : data};
} catch (e) {
return { dberror : e }
}
}
我希望连接并插入数据。
有人能帮忙吗?
首先,出于安全原因,您不应对凭据进行硬编码。您可以使用 IBM Cloud Functions 命令将服务绑定到您的操作。您可以找到此 tutorial that uses functions with various Db2 operations 中提供的代码示例。通过避免硬编码凭据,您也不会 运行 复制和粘贴错误。
其次,all connection attributes end with a ";"。在密码属性后加一
第三,尝试使用 SSL 连接而不是常规连接。