使用mysql2 / promise时如何关闭sql连接?

时间:2017-02-01 18:24:21

标签: javascript mysql node.js promise

我有这样的nodejs代码:

var mysql = require('mysql2/promise');

mysql.createConnection({
    host: "localhost",
    user: "root",
    password: "123123",
    database: "mydatabase"
})
.then((connection) => connection.execute("SELECT * FROM mytable"))
.then(([rows, fields]) => {
    console.log(rows);
});

当我执行它时,应用程序打印数据库行数组,并在此之后仍在运行。似乎发生了因为没有释放连接。如何在console.log之后发布它?

我试过这种方式:

var mysql = require('mysql2/promise');

mysql.createConnection({
    host: "localhost",
    user: "root",
    password: "123123",
    database: "mydatabase"
})
.then((connection) => {
    connection.execute("SELECT * FROM mytable")
    .then(([rows, fields]) => {
        console.log(rows);
        connection.release();
    });
});

但结果为TypeError: this.connection.release is not a function

抱歉我的英文。

有什么想法吗?

1 个答案:

答案 0 :(得分:3)

由于mysql2主要与mysql保持API兼容,因此您应该能够关闭与connection.end()的连接。