Javascript 使用node.js插入mysql
我正在尝试node.js,并使用它来处理连接 到目前为止,我一直在关注github页面的基本用法,但由于某些原因,我甚至无法获得最简单的函数连接Javascript 使用node.js插入mysql,javascript,mysql,node.js,Javascript,Mysql,Node.js,我正在尝试node.js,并使用它来处理连接 到目前为止,我一直在关注github页面的基本用法,但由于某些原因,我甚至无法获得最简单的函数连接 var mysql = require('mysql'); var db_host = 'localhost'; var db_user = 'root'; var db_pass = 'pass'; var db_name = 'mydb'; var client = mysql.createConnection({ host: db_hos
var mysql = require('mysql');
var db_host = 'localhost';
var db_user = 'root';
var db_pass = 'pass';
var db_name = 'mydb';
var client = mysql.createConnection({
host: db_host,
user: db_user,
password: db_pass,
database: db_name
});
console.dir(client); // prints a whole bunch of connection object data
client.connect(function(err) {
// connected! (unless `err` is set)
console.dir('got here!'); // prints nothing!
if (err) console.dir(err); // prints nothing!
});
client.query('SELECT 1', function(err, rows) {
console.log('here'); // print nothing!
console.dir(err); // prints nothing!
console.dir(rows); // prints nothing!
});
client.end();
process.exit();
我对node非常陌生,所以我确信我遗漏了一些明显的东西,但这似乎非常简单,我甚至不能让这个东西以明显的方式被打破——它打印出没有错误——基本上什么都没有发生
有什么建议吗?节点是异步的,因此它不会线性执行其操作。通过这样做:
client.connect //...
client.end // ...
您正在启动初始连接过程,然后在客户端连接有时间连接之前立即关闭客户端连接。您需要异步执行任务
client.connect(function(err) {
// connected! (unless `err` is set)
console.dir('got here!'); // prints nothing!
if (err)console.dir(err); // prints nothing!
client.query('SELECT 1', function(err, rows) {
console.log('here'); // print nothing!
console.dir(err); // prints nothing!
console.dir(rows); // prints nothing!
client.end();
process.exit();
});
});
什么都没有发生,这意味着您甚至看不到
console.dir(客户端)
行输出?我会尝试在解释器中一行一行地执行每一行,看看会发生什么