首頁 >資料庫 >mysql教程 >sp_reset_connection 如何重置 SQL Server 連線以及它不會影響什麼?

sp_reset_connection 如何重置 SQL Server 連線以及它不會影響什麼?

Mary-Kate Olsen
Mary-Kate Olsen原創
2025-01-02 15:37:38549瀏覽

How Does sp_reset_connection Reset SQL Server Connections and What Doesn't It Affect?

深入研究 SQL Server 連線池中 sp_reset_connection 的功能

SQL Server 使用連線池來有效管理資料庫來有效管理資料庫。這個機制的核心是預存程序 sp_reset_connection,它在重複使用池中的連接時被呼叫。其主要目標是重置連線的狀態以確保為後續使用做好準備。

全面重置

sp_reset_connection 重置連接的各個方面,包括:

  • 錯誤狀態和數字
  • 執行上下文(EC)
  • 未完成的I/O操作
  • 保留的伺服器緩衝區
  • 鎖定的緩衝區資源
  • 連接分配的記憶體
  • 臨時表
  • 全域遊標
  • 臨時表
  • 全域遊標
  • 開啟SQL-XML句柄與相關工作紙
  • 系統與使用者表
  • 臨時物件
  • 開放事務
  • 分散式交易登記
  • 共享資料庫鎖定
  • 已取得鎖定
  • 句柄
  • SET選項
  • @@rowcount
@@identity

會話級跟踪options

排除
  • 但是,sp_reset_connection特別避免重置:
  • 安全上下文,這對於基於以下內容匹配連接至關重要連接字串
應用程式角色,因為它們不能已恢復

事務隔離等級

  • 實際影響
  • 透過sp_setapprole 建立的應用程式角色仍然有效。
事務必須由應用程式明確管理,如 sp_reset_connection不會重置它們。 避免依賴在連線重用中保留的 SET 選項,因為它們會重設為預設值。

以上是sp_reset_connection 如何重置 SQL Server 連線以及它不會影響什麼?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn