connection.query 不是一个函数 Node.js MySQL
Posted
技术标签:
【中文标题】connection.query 不是一个函数 Node.js MySQL【英文标题】:connection.query is not a function 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;
。
【参考方案1】:
我在“异步函数”中遇到了这个错误。在我的情况下,我对池的调用之前没有 await
关键字。
错误:
let conn = pool.getConnection();
没有错误:
let conn = await pool.getConnection();
【讨论】:
以上是关于connection.query 不是一个函数 Node.js MySQL的主要内容,如果未能解决你的问题,请参考以下文章
JS 无法查询 MySQL 数据库。错误:connection.query 不是函数
mysqli_query 的用法和my_sqliconnect的用法