SQL Server環境語言變換導致存儲過程執行不正常的解決
在SQL Server數據庫操作中,SQL Server環境語言變換會導致存儲過程執行不正常的問題,本文我們主要就介紹了一個這類問題的實例及其解決方案,希望能夠對您有所幫助。
數據表,其中有一個字段存儲星期名稱,如Sunday,Monday,Tuesday,Wednesday,Thursday,Friday,Saturday。不知那一天,客戶把環境語言改為中文了,原本判斷當天的的星期名稱是否與存儲的名稱是否一樣,結果沒有一天是否判斷正常的。
因為環境語言變化了,如果今天執行下面代碼:
- SELECT DATENAME(w,GETDATE())
得到的是“星期三”,這個結果永遠無法與存儲的星期名稱一樣,導致存儲過程略過相等的事務。
為了解決這個問題,Insus.NET得去修改這個存儲過程,在獲取當天DATENAME前,設置語言。這樣就可以實現不會以環境語言變化,判斷有所出現問題。
- SET LANGUAGE us_english --設置語言
- SELECT DATENAME(w,GETDATE())
以上就是SQL Server環境語言變換導致存儲過程執行不正常的問題的解決方案,本文就介紹到這里了,希望本次的介紹能夠對您有所收獲!
【編輯推薦】