【问题标题】:connection.query is not a function Node.js MySQLconnection.query 不是一个函数 Node.js MySQL
【发布时间】:2017-09-19 11:44:54
【问题描述】:

我尝试使用 mySQL 连接进行 INSERT。但它说 connection.query() 不是一个函数。我可以在 sql.js 文件中执行 INSERT,但不能在 controller.js 中。

controller.js(我想做 INSERT 的地方)

var connection=require('../../sql');
exports.render=function(req,res){
  res.render('login',{

  });
};
exports.create=function(req,res){
  res.render('signin');
};
exports.signin=function(req,res){
  var data  = {usr: 'goi', pwd: 'me'};
  connection.query('INSERT INTO login SET ?', data, function(err, result) {
    
  });
    res.render('layout');
};

sql.js(我连接到 MySQL 的地方)

var mysql=require('mysql');
var connection=mysql.createConnection({
  host:'127.0.0.1',
  port: '3306',
  user:'root',
  password:'12345',
  database:'db'
});

connection.connect(function(error){
  if(!!error){
    console.log(error);
  }else{
    console.log('Connected!:)');
  }
});

module.exorts=connection;

【问题讨论】:

  • sql.js 中的简单错字; module.exorts=connection; 应该是 module.exports=connection;

标签: mysql node.js


【解决方案1】:

我在“异步函数”中遇到了这个错误。在我的情况下,我对池的调用之前没有 await 关键字。

错误:

let conn = pool.getConnection();

没有错误:

let conn = await pool.getConnection();

【讨论】:

    猜你喜欢
    • 2019-02-10
    • 1970-01-01
    • 2019-01-06
    • 2020-12-21
    • 2016-09-10
    • 2020-01-25
    • 2019-03-12
    • 2017-10-25
    • 1970-01-01
    相关资源
    最近更新 更多