我遇到了javascript / node js函数的问题。
当我发送带有“request.service.mssql”对象的函数查询的sql查询时,结果函数被调用两次......
我不明白,因为我的sql查询是“更新”,结果是空的(我没有多行结果)
例如,我有一个发送带有新密码的电子邮件的功能。电子邮件发送两次......我找到了一个带索引的临时解决方案,但它不是很干净。
你能解释一下吗?
//construct SQL query
var email = "test@toto.com";
var password = require("crypto").randomBytes(4).toString('hex');
var password_md5 = require("crypto").createHash("md5").update(password).digest("hex");
var sql = "update dbo.mytable SET password='"+password_md5+"' where id=12";
var id = 0; //temp solution
mssql.query(sql,
{
success: function(results) {
//Send email with new pwd
if(id == 0) {
response.send(statusCodes.OK,password_md5);
sendEmail(email,password);
}
id++; //temp solution
},
error: function(err) {
response.send(statusCodes.INTERNAL_SERVER_ERROR,"Error : " + err);
}
});
谢谢: - )
史蒂夫
答案 0 :(得分:0)
我在另一个论坛上得到了答案:我必须使用set nocount on;
命令为我的SQL语句添加前缀。
感谢您的帮助。
史蒂夫