如何使用nodejs + pg进行区分大小写的查询
我要选择栏目内容== 'a@gmail.com',
但它似乎变成了 select column == 'a@gmail.com'?
[error: column "a@gmail.com" does not exist]
代码
var userEmail = 'a@gmail.com';
var query = 'SELECT EXISTS(SELECT * FROM "User" WHERE "Email" = "'+userEmail+'")';
dbClient.query(query, function(error, result) {
...
最佳答案
要使用绑定(bind)参数,您必须从 $1
开始编号(然后是 $2
等等),然后将参数放入数组中:
var query = 'SELECT EXISTS(SELECT * FROM "User" WHERE "Email" = $1)';
dbClient.query(query, [userEmail], function(error, result) {
始终以数组形式传递参数。是最安全的。
如果你有一个非常大的表,请记住不要传递一个函数来查询,除非你想在将控件返回到函数之前读取所有表。否则你可以使用“on”事件或使用 promise 方式(如 https://www.npmjs.com/package/pg-promise-strict )
关于node.js - 如何使用 nodejs + pg 进行区分大小写的查询,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31900544/