终止nodejs中的callback

我对nodejs很陌生。 我正在使用mysql节点模块。 这是我如何使用它:

 var connection = mysql.createConnection({ host: 'localhost', user: 'root', password: '', database: 'sample' }); connection.connect(function (err) { if (!err) { console.log("Database is connected ... \n\n"); } else { console.log("Error connecting database ... \n\n"); } }); var post = {PersonID: 1, Name: 'Prachi', City: 'Blore'}; var query = connection.query('INSERT INTO Persons SET ?', post, function(error, result) { if (error) { console.log(error.message); } else { console.log('success'); } }); console.log(query.sql); 

该节点代码在function上起作用。 如在,它将数据添加到表中。 但它并没有终止。 我正在犯的错误是什么?

仔细看看官方文档,你必须closures连接:

 var mysql = require('mysql'); var connection = mysql.createConnection({ host : 'localhost', user : 'me', password : 'secret' }); connection.connect(); connection.query('SELECT 1 + 1 AS solution', function(err, rows, fields) { if (err) throw err; console.log('The solution is: ', rows[0].solution); }); connection.end(); 

使用connection.end()closures连接

 var query = connection.query('INSERT INTO Persons SET ?', post, function(error, result) { connection.end(); if (error) { console.log(error.message); } else { console.log('success'); } });