使用 ibm_db 模块在 Node JS 中执行准备好的语句时出现问题
Issue with executing prepared statement in Node JS with ibm_db module
我是 NodeJS 技术的新手,在做 nodejs 项目时遇到以下问题。
我已经实现了 ibm_db 模块(建立 DB2 连接),并使用 "prepared statements" 执行 'SELECT' 查询。下面的查询执行时没有错误,但 console.log(result)
给出的结果为 {fetchMode : 4}
,但我在这里期望得到 COLUMN_1 结果。如果我在这里遗漏了什么,有人可以告诉我吗?
db.prepare('SELECT COLUMN_1 FROM TABLE_A WHERE COLUMN_2=?', function(err, stmt){
if(err){
console.log(err);
}
stmt.execute(['CA'], function(err, result){
console.log(result);
});
});
在执行回调中使用额外的提取使我能够看到查询语句的正确和想要的结果。
举个例子:
db.prepare('SELECT COLUMN_1 FROM TABLE_A WHERE COLUMN_2=?', function(err, stmt){
if(err){
console.log(err);
}
stmt.execute(['CA'], function(err, result){
result.fetch(function (err, data) {
if (err) {
console.error(err);
}
console.log(JSON.stringify(data));
result.closeSync();
});
});
});
以下网站给了我提示:https://groups.google.com/d/msg/node-ibm_db/AhZeeN6jFTM/MrRXSIW3DQAJ
我是 NodeJS 技术的新手,在做 nodejs 项目时遇到以下问题。
我已经实现了 ibm_db 模块(建立 DB2 连接),并使用 "prepared statements" 执行 'SELECT' 查询。下面的查询执行时没有错误,但 console.log(result)
给出的结果为 {fetchMode : 4}
,但我在这里期望得到 COLUMN_1 结果。如果我在这里遗漏了什么,有人可以告诉我吗?
db.prepare('SELECT COLUMN_1 FROM TABLE_A WHERE COLUMN_2=?', function(err, stmt){
if(err){
console.log(err);
}
stmt.execute(['CA'], function(err, result){
console.log(result);
});
});
在执行回调中使用额外的提取使我能够看到查询语句的正确和想要的结果。 举个例子:
db.prepare('SELECT COLUMN_1 FROM TABLE_A WHERE COLUMN_2=?', function(err, stmt){
if(err){
console.log(err);
}
stmt.execute(['CA'], function(err, result){
result.fetch(function (err, data) {
if (err) {
console.error(err);
}
console.log(JSON.stringify(data));
result.closeSync();
});
});
});
以下网站给了我提示:https://groups.google.com/d/msg/node-ibm_db/AhZeeN6jFTM/MrRXSIW3DQAJ