这是我第一次使用node和postgre。我试图通过在SQL语句中传入用户的电子邮件地址来获取postgre数据库中的电子邮件,名字和姓氏:
function getSingleUser(req, response, next){
var UserId = req.params.email.substring(1);
console.log(UserId);
pool.connect(function(err, client, done){
if(err){
return console.error('Error fetching client from pool', err);
}
client.query('SELECT users.email, users.firstname, users.lastname, users.id FROM people.users WHERE users.lastname = Williams', function(err, results){
if(err){
return console.log('error running query', err);
}
// Just returns the raw json data
response.json(results.rows);
client.release();
done();
});
});
};
每当我运行此操作时,我会收到错误:错误运行查询{error:column“williams”不存在。那么我可以使用什么来检查值而不是列?谢谢
答案 0 :(得分:0)
好的我通过在参数周围添加单引号并围绕其他所有内容加双引号来修复它。
client.query("SELECT users.email, users.firstname, users.lastname, users.id FROM people.users WHERE users.lastname = '" + UserId + "'"