症狀
請考慮以下案例:
- 您在 Microsoft SQL Server 2012 或 SQL Server 2014 中擁有包含的資料庫。
- 應用程式嘗試透過啟用 連線共用來連線至包含的資料庫。
- 應用程式會使用 SQL Server 驗證。
在此案例中,應用程式可能無法連線到資料庫。 此外,您會在 SQL Server 錯誤記錄檔中找到類似下列的錯誤:
注意
日期時間 登入錯誤:18456,嚴重性:14,狀態:5。
datetime Logon 使用者 'SID' 登入失敗。 原因:找不到符合所提供的名稱 [Client:] 的登入
DateTime SPID# 錯誤:18056,嚴重性:20,狀態:5。
datetime SPID# 用戶端無法重複使用具有 SPID 的工作階段 #,此工作階段已針對連接共用重設。 失敗識別碼為 #。 此錯誤可能是先前的作業失敗所造成。 檢查緊接在此錯誤訊息之前的錯誤日誌中是否出現失敗的作業。
附註:若是第一次連線至包含的資料庫,則不會發生此問題。 不過,所有連續的嘗試都會發生此問題。
解決方式
此問題已先在下列 SQL Server 累積更新中修正。
SQL Server 2014 累積更新 1 /zh-tw/help/2931693
SQL Server 2012 SP1 的累積更新 7 /zh-tw/help/2894115
關於 SQL Server 的累積更新
SQL Server 的每個新累積更新都包含所有 Hotfix 和先前累積更新的所有安全性修正程式。 查看 SQL Server 的最新累積更新:
狀態
Microsoft 已確認這是「適用對象」一節中列出的 Microsoft 產品中的問題。
更多資訊
此更新也修正了下列內建函式會傳回使用者 SID 而不是使用者名稱的另一個問題:
- SUSER_SNAME
- SUSER_NAME
- SYSTEM_USER
注意:此更新可確保無論是否使用包含的資料庫,這些函數一律會傳回使用者名稱。
參考資料
請參閱 Microsoft 用來說明軟體更新的 術語 。