动态SQL字符长度超过8000
2012-12-11 16:38
211 查看
动态SQL字符长度超过8000,我记得SQL SERVER 2005中用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)还是不能显示,肯定是资源不够用
平常用动态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)还是不能显示,肯定是资源不够用
相关文章推荐
- 动态SQL字符长度超过8000【SQL SERVER 2005之完美解决方案】
- sqlserver sp_executesql 动态SQL字符长度超过8000
- 动态SQL字符长度超过8000
- 动态SQL字符长度超过8000【SQL SERVER 2005之完美解决方案】
- 动态SQL字符长度超过8000
- 动态执行超过4000个字符的SQL
- SQL 处理长度超过8000 的字符串
- 动态sql语句超过8000个字符的处理方法
- 动态sql语句超过8000个字符的处理方法
- sql server 解决动态字符超过8000的方法
- SQL 处理长度超过8000 的字符串
- SQL 处理长度超过8000 的字符串
- EXCEL某列长度超过255个字符导入SQL SERVER2005的处理方法
- SQL语句超过缓冲区长度
- T-SQL把字符串变表,字符串变数组,字符数组长度
- sql字符截取-传递到 SUBSTRING 函数的长度参数无效
- 在SQL中参数值超过8000(TEXT类型)的处理方法,以"逗号"分隔的字符串
- js实现超过长度的字符截取指定长度(中文字符算2个字符),超出部分以...显示
- 编写函数,对标准输入进行扫描,并对“the”出现的次数进行计数。 进行比较时应区分大小写。认为一个单词有一个或多个空格字符分隔, 并且输入行在长度上不会超过100个字符,计数结果输出。
- js的参数有长度限制吗?发现不能超过2083个字符