我正在使用CONTEXT_INFO將用戶名傳遞給用於審計/歷史記錄表的刪除觸發器。我試圖理解CONTEXT_INFO的範圍,如果我正在創建潛在的競爭條件。SQL Server中CONTEXT_INFO的作用域是什麼?
我的每個數據庫表都有一個存儲proc來處理刪除。刪除存儲的proc將userId作爲參數,並將CONTEXT_INFO設置爲userId。我的刪除觸發器會抓取CONTEXT_INFO並使用它來更新一個審計表,指示誰刪除了行。
問題是,如果兩個刪除不同用戶的sprocs同時執行,可以將其中一個sprocs中的CONTEXT_INFO設置爲由另一個sproc觸發的觸發器消耗嗎?
我看過這篇文章http://msdn.microsoft.com/en-us/library/ms189252.aspx但我不清楚SQL Server中會話和批處理的範圍,這對於文章的幫助很有幫助!
我會發布代碼,但目前時間很短。如果不夠清楚,我會稍後再編輯。
在此先感謝您的幫助。