Модуль Nodejs mysql возвращает записи два раза вместо одного - PullRequest
0 голосов
/ 26 декабря 2018

В настоящее время я работаю над проектом Node Js и сталкиваюсь с проблемой, что при выполнении запроса с использованием подключения из модуля mysql я получаю результаты в виде записей, возвращаемых два раза вместо одного.

This is the code:
con.connect(function(err) {
        if (err) throw err;
        //Select only "name" and "address" from "customers":
        con.query("SELECT * FROM client", function (err, result, fields) {
          if (err) throw err;
          for( i=0; i<result.length; i++ ){
              console.log("Code: "+result[i].code+" Nom: "+result[i].nom+" Prenom: "+result[i].prenom+" Ville: "+result[i].ville);
          }
        });
      });

Код: 24 Номинал: AHMADI Prenom: HAROUNI Ville: TANGER
Код: 25 Nom: BENNANI Prenom: KENZA Ville: FES

Код: 24 Ном.: AHMADI Prenom: HAROUNI Ville: TANGER
Код: 25 Номинал: BENNANI Prenom: KENZA Ville: FES

Более того, я сталкиваюсь с этой проблемой либо с вызовами функций, либо с использованием модулей.

Ответы [ 2 ]

0 голосов
/ 26 декабря 2018

Ваш код должен быть в порядке, потому что на моем сервере он работает, несмотря на то, что я использую обещания.https://www.w3schools.com/nodejs/nodejs_mysql_select.asp Здесь у вас есть пример mysql, такой же, как ваш, который работает.Не проблема в вашей БД?

0 голосов
/ 26 декабря 2018

Попробуйте изменить переменный результат на переменные поля с выделенным текстом в loop и console.log.Вот код.

con.connect(function(err) {
        if (err) throw err;
        //Select only "name" and "address" from "customers":
        con.query("SELECT * FROM client", function (err, result, fields) {
          if (err) throw err;
          console.log("Code: "+fields[i].code+" Nom: "+fields[i].nom+" Prenom: "+fields[i].prenom+" Ville: "+fields[i].ville);
        });
      });
...