国产成人精品久久免费动漫-国产成人精品天堂-国产成人精品区在线观看-国产成人精品日本-a级毛片无码免费真人-a级毛片毛片免费观看久潮喷

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

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

瀏覽:159日期: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
相關文章:
主站蜘蛛池模板: 免费亚洲网站 | 久草视频在线资源站 | 欧美一级欧美三级在线 | 在线日本视频 | 男女视频在线看 | 乱子伦一级在线现看 | 亚洲日本一区二区三区高清在线 | 精品国语_高清国语自产 | 中文字幕一区二区三区 精品 | 99国产精品农村一级毛片 | 亚洲天堂2016 | 国产一区二区亚洲精品天堂 | 一级a级国产不卡毛片 | 一级特黄a免费大片 | 日本精品1在线区 | 久久久久久国产精品免费免费 | 午夜国产片 | 欧美一区二区视频三区 | 7777在线视频 | 日韩亚洲欧美一区噜噜噜 | 欧美h版成版在线观看 | 欧美日本一区二区三区道 | a毛片免费全部播放毛 | 久久久国产99久久国产久 | 亚洲国产精品一区二区三区在线观看 | 九九免费在线视频 | 欧美日本国产 | 久久久久无码国产精品一区 | 国产肥老妇视频一 | 久草在线首页 | 2019偷偷狠狠的日日 | 国产人成亚洲第一网站在线播放 | аⅴ资源天堂8在线 | 国产精品高清免费网站 | 国产1区2区三区不卡 | 特黄特黄aaaa级毛片免费看 | 99久久免费精品 | 国产成人综合日韩精品婷婷九月 | 亚洲精品综合一区二区三区在线 | 欧美自拍视频 | 精品国产三级v |