2019年2月26日 星期二

SQL Server stored procedure varchar 長度問題

 

在處理一個stored procedure 問題,看起來script沒啥問題,但追查後發現

原本是宣告varchar(8000) 的變數,但在SQL Server 執行stored procedure 時列印該變數時發現,長度還沒到8000就會被截掉了,這問題似乎沒人遇到過,頂多就是有人遇到 在組宣告為varchar(Max)字串變數時,發現長度會被截掉字串 ,要在組字串時都強制宣告為varchar(Max)  才能排除 (請參考 [SQL]VARCHAR(MAX)字串相加的問題)

不遺我不是用這個解法,而是將原本宣告varchar(8000)的變數改宣告為varchar(Max) 就正常了,非常怪異,不露至少是解決了此問題,在此紀錄下來方便查詢