午夜剧场伦理_日本一道高清_国产又黄又硬_91黄色网战_女同久久另类69精品国产_妹妹的朋友在线

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

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

瀏覽:239日期: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
相關文章:
主站蜘蛛池模板: 久久久国产精品久久久 | 一区av在线 | 视频一区二区在线观看 | 日日夜夜精品视频免费 | 亚洲国产黄色片 | 欧美精品免费看 | 对白超刺激精彩粗话av | 思思久久久 | 欧美国产精品一区 | 欧美 日韩 中文字幕 | 99免费在线观看视频 | 黄色男女视频 | 久久成年视频 | 久久在线免费视频 | 色综合久久88色综合天天 | 日本一本一道 | 亚洲三级久久 | 国产精品久久在线观看 | 97超碰资源站 | 国产v视频| 亚av| 国产欧美精品区一区二区三区 | 翔田千里在线视频 | 69国产精品 | 超碰10000 | av在线超碰 | av中文字幕免费观看 | 国产精品欧美综合 | 日本黄色免费在线观看 | 日日躁夜夜躁白天躁晚上躁91 | 毛片在线网 | 国产视频1区2区 | 久久一级精品 | 天天操天天干天天舔 | 日韩成人区 | 国产精品久久久久久久久免费 | 五月婷六月丁香 | 日韩成人一区 | 黄色一级免费网站 | 日韩在线一区二区 | 国产91精品久久久久 |