nodejs操作数据库怎么在进行查询操作后获取查询的返回数据
时间: 2024-05-09 18:14:55 浏览: 9
在 Node.js 中使用数据库进行查询操作时,可以使用回调函数或 Promise 来获取查询的返回数据。
使用回调函数的方式,可以在查询语句执行完成后,将查询结果作为参数传递给回调函数。例如:
```
const mysql = require('mysql');
const connection = mysql.createConnection({
host: 'localhost',
user: 'root',
password: 'password',
database: 'example_db'
});
connection.connect();
connection.query('SELECT * FROM users', (error, results, fields) => {
if (error) throw error;
console.log(results);
});
connection.end();
```
在上面的示例中,当查询语句执行完成后,会调用传递的回调函数,并将查询结果作为第二个参数传递给回调函数。
使用 Promise 的方式,可以使用 Node.js 中的 `util` 模块中的 `promisify` 方法将 Node.js 的回调函数转换为 Promise。例如:
```
const mysql = require('mysql');
const util = require('util');
const connection = mysql.createConnection({
host: 'localhost',
user: 'root',
password: 'password',
database: 'example_db'
});
const query = util.promisify(connection.query).bind(connection);
connection.connect();
query('SELECT * FROM users')
.then((results) => {
console.log(results);
})
.catch((error) => {
throw error;
})
.finally(() => {
connection.end();
});
```
在上面的示例中,使用了 `util.promisify` 方法将 `connection.query` 方法转换为 Promise。然后可以通过 `then` 方法获取查询结果,或者通过 `catch` 方法捕获查询错误。最后,使用 `finally` 方法关闭数据库连接。