gpt4 book ai didi

mysql - Nodejs 使用 mysql 模块的 Mysql 连接池

转载 作者:行者123 更新时间:2023-11-29 23:18:02 24 4
gpt4 key购买 nike

我们正在为 Node 使用 mysql 模块,我只是想知道这种方法是否好或者是否对我们的应用程序有任何不良影响,请考虑这种情况

dbPool.getConnection(function(err, db) {
if(err) return err;
db.query()

在这里,我调用 dbPool 对象并从池中请求连接,然后使用它。但是我发现了另一种实现(这就是我要问的),它直接使用 dbPool 对象,例如:

dbPool.query('select * from test where id = 1' function(err, rows) {})

所以我想知道第二个实现到底做了什么,它是否自动返回一个空闲连接并使用它?可以解释第二种情况到底发生了什么以及它是否对我的应用程序有任何影响+或-?谢谢。

最佳答案

这就是所谓的回调链。在 NodeJS 中,有很多异步调用。但有时你想在与 MySQL 连接完成后做一些事情。这就是 getConnection 功能具有 callBack 功能的原因。

dbPool.getConnection(function(err, db) {
if(err) return err;
db.query()

等于:

dbPool.query('select * from test where id = 1' function(err, rows) {})

dbPool.query() 将等待连接打开,您不必将所有查询放入 getConnection 中即可使其工作。这就是为什么它还具有回调功能。

如果我错了请告诉我。我希望这能解决您的问题。

关于mysql - Nodejs 使用 mysql 模块的 Mysql 连接池,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27589129/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com