开发者问题收集

如何修复 Nodejs 中的“err is not defined”错误

2019-05-08
12285

我尝试在 Nodejs 中建立与 mysql 数据库的连接,但编译时提示“err 未定义”。我对 Node.js 还不太熟悉,但我认为这是处理错误的合适方法,即使使用 mysql 包也是如此,这也是与我没有遇到此问题的其他项目的唯一区别。

throw err; // 重新抛出非 MySQL 错误 ^

ReferenceError:err 未定义

const express = require('express');
const mysql = require('mysql');

//Create connection
const db = mysql.createConnection({
    host     : 'localhost',
    user     : 'root',
    password : '123456',
    database: 'ca1903'
});

//Connect
db.connect(() => {
    if(err){
        console.log(err);
    }
    console.log('MySql Connected');
});

const app = express();

//create DB
app.get('/createdb', () => {
    let sql = 'CREATE DATABASE ca1903';
    db.query(sql, (err, result) => {
        if(err){
            console.log(err);
        }
        console.log(result);
        res.send('database created....');
    });
});
1个回答

您在 db.connect 调用中缺少 err 参数。它应该按以下方式。

// Connect
db.connect((err) => {
  if(err){
    console.log(err);
  }
  console.log('MySql Connected');
});
Sreehari
2019-05-08