亚洲精品久久久中文字幕-亚洲精品久久片久久-亚洲精品久久青草-亚洲精品久久婷婷爱久久婷婷-亚洲精品久久午夜香蕉

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

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

瀏覽:128日期: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模塊內部原理不是很清楚;望大家解惑啊;

問題解答

回答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
相關文章:
主站蜘蛛池模板: 色妇影院 | 1769国产精品免费视频 | 尤物在线观看网站 | 手机看片日韩日韩韩 | 久久成人小视频 | 韩国日本一级毛片免费视频 | 日本大片成人免费网址 | 亚洲天天在线日亚洲洲精 | 国产免费无遮挡精品视频 | 精品综合久久久久久99 | 中文字幕成人 | 国产在线干 | 久久婷婷五色综合夜啪 | 九九精品免费视频 | 一级a俄罗斯毛片免费 | 欧美日韩国产在线人成dvd | 免费在线观看视频网站 | 国产手机在线观看 | 欧美色五月 | 欧美精品久久久久久久影视 | 国产一区美女视频 | 国产成人精品综合在线观看 | 亚洲色啦啦狠狠网站 | 亚洲成a人片在线观 | 成年人黄色片网站 | 免费看黄网址 | 999久久久国产精品 999久久久精品视频在线观看 | 水蜜桃爱爱yy视频在线观看 | 毛片三级在线观看 | 国产成人午夜极速观看 | 色片网址 | 麻豆免费视频网站入口 | 免费福利视频在线观看 | 爱爱小视频在线观看网站 | 黄 色 片成 人免费观看 | 成人禁在线观看 | 精品一区二区国语对白 | 精品欧美亚洲韩国日本久久 | 一区二区日韩欧美 | 国产精品玖玖玖在线观看 | 激情爱爱的免费视频 |