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

时间:2018-04-19 20:46:01

标签: javascript mysql node.js command-line-interface



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();
    })
};
&#13;
&#13;
&#13;

CLI error message screenshot

如果我正在阅读它与我的.length有关的事情,但我没有看到该行的问题所以对此有任何帮助吗?

2 个答案:

答案 0 :(得分:1)

您正在尝试访问null的length属性。由于null没有length属性,因此会出现错误。

检查customer.js的第19行

在尝试使用它执行for循环之前,调试res。对象,然后查看它包含的内容。

答案 1 :(得分:1)

您的查询未返回任何结果,因此for中的null参数为localhost:8889并且没有属性,因此您会收到错误消息。

检查您的数据库是否已在<?php $explo0= explode('@',"some@mail.com"); for($i=0;$i<count($explo0);$i++){ $exploresult0.=$explo0[$i+1]; } echo "@".$exploresult0; 启动并运行。