第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

node mysql connection.end() 和 connection.destroy()

node mysql connection.end() 和 connection.destroy()

海綿寶寶撒 2019-03-05 15:19:36
npm mysql 文檔中我們可以看到對connection.end()和connection.destroy()區(qū)別的描述是connection.end()會確保在把COM_QUIT包發(fā)送給mysql服務(wù)器之前執(zhí)行隊列中的查詢語句,如果在COM_QUIT包發(fā)送之前發(fā)生了致命錯誤會把錯誤傳遞給回調(diào)函數(shù)的參數(shù)err,但連接無論如何也都是會被中斷的。而destroy()是沒有回調(diào)函數(shù)直接中斷的。(不知道有沒有翻譯對,看了網(wǎng)上一些文章也是大概這么說的)。我的問題是,COM_QUIT發(fā)送前隊列中的查詢語句指的是什么,這個隊列是哪來的,有什么實際的情景可以說明一下嗎?這兩種終止連接的方式對于用戶有什么不同的影響?如果只是有沒有回調(diào)函數(shù)的區(qū)別,那我要終止連接是兩個都可以任意使用嗎?
查看完整描述

1 回答

?
人到中年有點甜

TA貢獻1895條經(jīng)驗 獲得超7個贊

查詢隊列指的是什么

在官方文檔的Introduction部分其實就講到了,文檔傳送門

  • Every method you invoke on a connection is queued and executed in sequence.

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

舉例,下面的兩個調(diào)用,在內(nèi)部是排隊執(zhí)行的。

connection.query('SELECT * FROM hello');
connection.query('SELECT * FROM world');

end、destroy的區(qū)別

兩者的區(qū)別很明顯,還是以前面的代碼為例子。

1、connection.end():把查詢1、查詢2順利執(zhí)行完,得到查詢結(jié)果后,斷開mysql服務(wù)器的連接。
2、connection.destryo():直接斷開連接,不管還有多少查詢沒執(zhí)行完。

connection.query('SELECT * FROM hello'); // 查詢1
connection.query('SELECT * FROM world'); // 查詢2


查看完整回答
反對 回復(fù) 2019-03-15
  • 1 回答
  • 0 關(guān)注
  • 702 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學習伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號