我正在尝试在我的数据库中插入一个值,即mydb,并且该表是使用2个字段的用户名和密码登录的。我正在使用express.js和MySQL。插入查询的代码是
exports.insert = function(req,res){
client.query('insert into' +TABLE+ ' SET username=?,password=?'
, [req.body.txtUser,req.body.txtPassword]
,
function(err,result){
if(err){
console.log("error in insertion:"+ err.message);
}
else{
console.log("query executed");
res.json("data inserted");
}
}
);
}
当我启动服务器时,它开始正常; y并显示消息:
Express服务器在开发模式下侦听端口3000
但是,当我访问注册页面并插入值并按下提交时,会生成以下错误
插入错误:连接ECONNREFUSED
任何人都可以帮助我吗?
答案 0 :(得分:0)
这不是Node.js问题。您通常无法连接到MySQL客户端。
您需要在MySQL中为您用于连接的用户名授予访问权限和权限。提供访问权限,然后尝试手动登录以使用MySQL客户端或管理工具(如MySQL Admin或命令行mysql
客户端)测试此连接。请记住,在MySQL中,您必须设置localhost
以及远程。我相信它仍然默认为localhost
。例如您需要为其他主机名明确设置admin@*
。阅读MySQL手册here
一旦您的客户端工作,那么您的node.js客户端应该使用相同的用户名和设置。