Как установить параметризованное значение в запросе Postgres SELECT, используя условие WHERE - PullRequest
0 голосов
/ 01 июня 2018

Я очень новичок в PostgreSQL, пожалуйста, потерпите меня.

Мне нужно прочитать записи из таблицы, используя запрос select с условием where.

  Eg: select * from switch where switchId=10;

QueryFactory.js

  let queryMap = {
        “getSwitchInfo”: ‘select * from switch where switchId=?’
  }

  module.exports=queryMap;

Controller.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 в запрос в качестве параметризованного значения.

1 Ответ

0 голосов
/ 01 июня 2018

Я сам нашел решение этой проблемы.Добавил params в массив и передал этот массив как второй param методу client.query и в запросе, где условие я добавил $ 1.Теперь он работает нормально

QueryFactory.js

  let queryMap = {
    “getSwitchInfo”: ‘select * from switch where switchId=$1’
  }

  module.exports=queryMap;

Controller.js

  let params = [req.query.switchId];
     client.query(query, params, function(err, res){
         if(err){

         }
   });
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...