动态SQL字符长度超过8000
生活随笔
收集整理的這篇文章主要介紹了
动态SQL字符长度超过8000
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
動態SQL字符長度超過8000,我記得SQL SERVER 2008中用SP_EXECUTESQL打破了這個限制。
?
平常用動態SQL,可能都會用EXEC(),但是有限制,就是8000字符串長度。自從SQL SERVER 2005起,在 INSIDE SQLSERVER 2005 T-SQL PROGRAMMING中提到,使用SP_EXECUTESQL()和NVARCHAR(MAX)可以超越8000個字符的限制。因為 SP_EXECUTESQL()必須使用NVARCHAR,NCHAR,NTEXT作為參數,所以SP_EXECUTESQL()的最長字符限制就是 4000。
?
我們看一個NVARCHAR(4000)的例子:
?
?
?
如何打破這個限制,我們再看(將SQL字符變量類型設置為NVARCHAR(MAX)):
?
?
可以看到,成功執行了SQL字符長度為9999的動態SQL。。
?
看一個SQL字符超過100000的例子:
?
?
?
字符串長度巨大,我只能將結果保存到RPT文件,可惜的是,我的機器(2.5內存+32位WIN2003)還是不能顯示,肯定是資源不夠用
轉載于:https://www.cnblogs.com/aflyfly/p/4551592.html
總結
以上是生活随笔為你收集整理的动态SQL字符长度超过8000的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 目录书籍
- 下一篇: H5开发中的问题总结