вопрос вопрос в postgres - PullRequest
       3

вопрос вопрос в postgres

1 голос
/ 27 апреля 2019

Я использую следующий фрагмент кода в приложении Node.js для попытки запроса (локальной) базы данных postgres:

   var conString = "postgres://user:password@localhost:5432/mydatabase";
   var client = new pg.Client(conString);

    client.connect(function(err) {
      if(err) {
        return console.error('could not connect to postgres', err);
      }
      client.query("SELECT * FROM users WHERE name = $1 AND cred = $2", [String(req.body.usr), String(req.body.pword)], function(err, result) {
        if(err) {
          return console.error('error running query', err);
        }
         if (typeof result.rows[0] === "undefined") {
         console.log("No user/password determined in DB for login attempt");
         } else {

         }  //user/password is 'undefined' (NOT found in database)...OR NOT... 

        client.end();
      });
    });

Я получаю сообщение об ошибке при выполнении запроса ... Я считаю,проблема может быть в количестве параметров в моем запросе запроса ...?Если это так (или это какая-то другая проблема синтаксиса), может кто-нибудь так любезно сообщить, как мне следует изменить код для правильного выполнения запроса ...?

Мне просто нужно взять 2 (предоставленных пользователем) результата из формы (req.body.usr и req.body.pword) и сравнить их с таблицей базы данных 'users', чтобы определить, являются ли учетные данныеправильный.Я уже считаю, что соединение с базой данных работает правильно.Любой совет с благодарностью.Заранее благодарю.

1 Ответ

0 голосов
/ 27 апреля 2019

Изменение:

client.query("SELECT * FROM users WHERE name = $1 AND cred = $2", [String(req.body.usr), String(req.body.pword)], function(err, result) {...

на:

const query = {
    text: "SELECT * FROM users WHERE name = $1 AND cred = $2", 
    values: [String(req.body.usr), String(req.body.pword)]
};
client.query(query, function(err, result) {

Подробнее: https://node -postgres.com / features / questions

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