当我试图用mysql数据库运行node.js文件时,这个错误意味着什么?

67up9zun  于 2021-06-24  发布在  Mysql
关注(0)|答案(2)|浏览(249)
var mysql = require('mysql');
var inquirer = require('inquirer');
var connection = mysql.createConnection({
    host: "localhost",
    port: 8889,
    user: "root",
    password: "root",
    database: "bamazon"
})

connection.connect(function(err) {
    if (err) throw err;
    displayProducts();
})

var displayProducts = function () {
  var query = "SELECT * FROM Products"
  connection.query(query, function(err, res) {
      for (var i = 0; i < res.length; i++) {
          console.log("Item ID: " + res[i].itemID + " || Product: " + res[i].productName + " || Department: " + res[i].productDepartment + " || Price: " + res[i].price + " || Stock: " + res[i].stockQuantity);
      }
      shoppingCart();
    })
};

cli错误消息屏幕截图
如果我读对了,这和我的长度有关,但我不认为这行有问题,所以有什么帮助吗?

js4nwp54

js4nwp541#

您的查询没有返回任何结果,因此 res 参数中的参数 fornull 并且没有属性,因此会出现错误。
检查您的数据库是否已启动并正在运行 localhost:8889 .

vqlkdk9b

vqlkdk9b2#

您正在尝试访问null的length属性。因为null没有length属性,所以出现了一个错误。
检查customer.js的第19行
在尝试使用console.log执行for循环之前,请记录res对象并查看它包含的内容。

相关问题