node.js - 如何使用 WHERE 条件在 Postgres SELECT 查询中设置参数化值
问题描述
我对 PostgreSQL 很陌生,请多多包涵。
我需要使用带有 where 条件的 select 查询从表中读取记录。
Eg: select * from switch where switchId=10;
查询工厂.js
let queryMap = {
“getSwitchInfo”: ‘select * from switch where switchId=?’
}
module.exports=queryMap;
控制器.js
let client = require(rootdir+’dao/postgresSQL’);
let queryFactory = require(rootdir+’/dao/QueryFactory’);
let query = queryFactory.getQuery(“getSwitchInfo”);
let switchId = req.query.switchId;
client.query(query, function(err, res){
if(err){
}
});
请参阅:-我从客户端获取的这个 switchId 值 10 并使用查询参数在我的节点后端层获取它。
请建议我如何将 switchId 作为参数化值传递给查询。
解决方案
我自己找到了解决这个问题的方法。将参数添加到数组并将此数组作为第二个参数传递给 client.query 方法,并在查询条件中我添加了 $1。现在工作正常
查询工厂.js
let queryMap = {
“getSwitchInfo”: ‘select * from switch where switchId=$1’
}
module.exports=queryMap;
控制器.js
let params = [req.query.switchId];
client.query(query, params, function(err, res){
if(err){
}
});
推荐阅读
- python - 如何在 Python 中比较它们各自列表中相同索引中的 2 个列表中的元素?
- kotlin - 在类/接口中创建扩展函数作为方法的用户案例是什么?
- python - 有没有办法只使用opencv来检测自主着陆的着陆区域?
- batch-file - 如何正确实现此批处理文件?
- pandas - 如何根据多个条件正确删除行
- python - 如何仅检测“旋转”图像?(未翻转)
- python-3.x - 如何在 Python3 中将 UTF-8 CSV 写入 BytesIO?
- android - Android @Compose 如何处理 Android 中的屏幕大小和方向
- swift - 以编程方式将资产添加到 iCloud 共享相册
- sql - 如何根据 PostgreSQL 中 JSON 中的另一个字符串从 JSON 中查询一个字符串?