色综合图-色综合图片-色综合图片二区150p-色综合图区-玖玖国产精品视频-玖玖香蕉视频

您的位置:首頁技術文章
文章詳情頁

javascript - 關于用mysql模塊連接數據庫的一點疑問

瀏覽:136日期:2023-09-17 13:26:33

問題描述

看實例代碼是這樣子的;

const mysql = require(’mysql’);exports.base = (sql, data, callback) => { // 創建數據庫連接 let connection = mysql.createConnection({host: ’localhost’, //數據庫所在的服務器域名或者IPuser: ’root’, //用戶名password: ’’, //密碼database: ’book’ //數據庫名稱 }); // 執行連接動作 connection.connect(); // 執行數據庫操作 connection.query(sql, data, (err, rows) => {if (err) throw err;callback(rows); }); // 關閉數據庫 connection.end();}

感覺應該是下面這樣的啊

const mysql = require(’mysql’);exports.base = (sql, data, callback) => { // 創建數據庫連接 let connection = mysql.createConnection({host: ’localhost’, //數據庫所在的服務器域名或者IPuser: ’root’, //用戶名password: ’’, //密碼database: ’book’ //數據庫名稱 }); // 執行連接動作 connection.connect(); // 執行數據庫操作 connection.query(sql, data, (err, rows) => {if (err) throw err;callback(rows);// 關閉數據庫connection.end(); }); }

就是感覺 數據庫關閉連接應該是在查詢的回調里面完成啊,如果像第一種寫法,查詢還沒結束,就關閉數據庫,是不是不妥呢,這個mysql模塊內部原理不是很清楚;望大家解惑?。?/p>

問題解答

回答1:

文檔:

Closing the connection is done using end() which makes sure all remaining queries are executed before sending a quit packet to the mysql server.

所以,調用了end()不會馬上關閉連接,要等剩余的查詢執行完才關閉,該觸發的回調還是觸發。destroy()才是直接關閉連接。

具體實現就是把全部操作都放到隊列里執行,end()只是把一個Quit操作放入隊列,Quit操作執行完之后才真正關閉。

標簽: JavaScript
相關文章:
主站蜘蛛池模板: 美女张开腿让男人捅爽 | 国产日产欧美精品一区二区三区 | 一级爱| 日本人在线看片 | 国产精品黄网站免费观看 | 国产成人精品高清在线 | 免费看男女做好爽好硬视频 | 精品国产一二三区在线影院 | 超清首页 国产 亚洲 丝袜 | 日韩精品免费一区二区三区 | 毛片aaa| 国产成人福利夜色影视 | 国产视频软件在线 | 国产三级香港三韩国三级 | 一级毛片一级毛片一级毛片 | 国产免费一级视频 | 亚洲精品人成网在线播放影院 | 国产三级午夜理伦三级 | 在线免费国产 | 欧美视频二区 | 国产美女动态免费视频 | 国产成人精品日本亚洲语音2 | www.夜色.com| 色多多香蕉 | 欧美日韩综合高清一区二区 | 日本加勒比视频在线观看 | 久久99精品久久久久久国产越南 | 精品国产香蕉伊思人在线 | 日韩欧美一区二区三区免费看 | 欧美在线一二三区 | 男人女人做刺激视频免费 | 久草国产视频 | 99精品免费久久久久久久久日本 | 免费国产一区二区在免费观看 | 91最新网站| 蕾丝视频永久在线入口香蕉 | 免费欧洲毛片a级视频无风险 | 欧美视频久久久 | 久久久精品成人免费看 | 国产黄页| 亚州三级视频 |