作者:淑圣承琦9_416 | 来源:互联网 | 2024-11-06 19:45
在Node.js中调用MySQL存储过程`updateUser(p1,p2,@p3)`时,其中`@p3`为输出参数。若更新操作失败,则返回0;成功则返回1。本文将详细介绍如何正确获取存储过程的返回结果,并确保在实际应用中能够顺利执行。
我参照网上的例子,Node.js调用mysql的存储过程
updateUser(p1,p2,@p3)
其中@p3是OUT参数,如果更新失败,返回0,更新成功返回1。
存储过程调试过,可以执行的。
var mysql = require('mysql');
var config = {host:'127.0.0.1' , database:'db_users' , user:'root' , password:'123456' , charset:'utf8'}
var connection = mysql.createConnection(config);
connection.connect();
var par1='张三';
var par2='123456';
var inParams=[par1,par2];
var sqlstr='call updateUser(?,?,@par3)';
connection.query(sqlstr, inParams, function (err,rows)
{
if(err) console.log(err);
else
{
console.log('Rows: ' + rows); //打印执行结果
var results=rows[0]; //按照网上的例子,是这样获得OUT的参数,但是我的程序执行到这一步就停了,没有执行打印
console.log('Results: ' + results);
var row=results[0]; //
console.log('更新结果: ' + row);
}
});
控制台打印结果:
Rows: {"fieldCount":0,"affectedRows":0,"insertId":0,"serverStatus":2,"warningCount":3,"message":"","protocol41":true,"changedRows":0}
请问大家,nodejs调用mysql存储过程,如何获得out参数的值?
我参考的例子:http://www.tuicool.com/articles/a6jQRv
但是我得不到结果
2 个解决方案