针对字符串长度超过8000的处理

if (exists (select * from sys.objects where name = ‘up_test‘))
drop proc up_test
go
Create PROC [dbo].[up_test]
as
declare @SQL nvarchar(max), @SQL1 nvarchar(4000), @SQL2 nvarchar(4000), @SQL3 nvarchar(4000),
@SQL4 nvarchar(4000);
set @SQL1 = N‘SQl语句1‘ ;  -- 长度不能超过4000; 
set @SQL2 =‘SQL语句2‘;     -- 长度不能超过4000;

set @SQL3 =‘SQL语句3‘;     -- 长度不能超过4000;

set @SQL4 =‘SQL语句4‘;     -- 长度不能超过4000;

set @SQL = concat(@SQL1, @SQL2, @SQL3, @SQL4);
exec SP_EXECUTESQL @SQL;

关于SP_EXECUTESQL 更详尽用法 参见

https://www.cnblogs.com/lonelyxmas/p/7975445.html
--print len(@sql);
--print @SQL;
--print @sql1;
--print @sql2;
--print @sql3;
--print @sql4;
GO

原文地址:https://www.cnblogs.com/adsoft/p/11474000.html

时间: 2024-10-10 14:48:04

针对字符串长度超过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作

c# word操作篇,解决字符串长度超过255就不能替换的问题

本文使用的是Microsoft.Office.Interop.Word组件,必须在系统安装了office相关组件的条件下进行,在com里面找到Microsoft  Word 16.0 Object Library并引用. 问题:使用c#操作word替换占位符的时候,当要替换的字符串超过一定的长度,就会提示“字符串参量过长”,搜索发现,替换的最大长度为255字符. 以220个字符串为例,执行替换工作. //构造数据 Dictionary<string, string> datas = new D

angularjs如何在ng-repeat过程中控制字符串长度超过指定长度后面内容以省略号显示

1 angular.module('ng').filter('cut', function () { 2 return function (value, wordwise, max, tail) { 3 if (!value) return ''; 4 5 max = parseInt(max, 10); 6 if (!max) return value; 7 if (value.length <= max) return value; 8 9 value = value.substr(0, m

比strlen执行速度更快的处理字符串长度的函数

我们大多都用strlen来验证字符串的长度,但其实isset也可以验证字符串的长度. 假如,我想验证$var变量字符串长度超过5了么.如果是strlen 则会这样写strlen($var)>5. 而isset 则可以这样写 isset($var[5]).把var变量换成数组,在查看数组的第5个位置 为不为null.关键的是的isset比strlen快很多,因为isset不需要做任何计算,只返回在zval 结构中存储的已知字符串长度 刚刚和朋友讨论的时候,发现isset不能判断小于和等于,于是  

.net MVC 使用 JSON JavaScriptSerializer 进行序列化或反序列化时出错,字符串的长度超过了为 maxJsonLength 属性设置的值

在.net mvc的controller中,方法返回JsonResult,一般我们这么写: [HttpPost] public JsonResult QueryFeature(string url, string whereClause) { string str=""; return Json(str); } 此时如果str过长,就会报“使用 JSON JavaScriptSerializer 进行序列化或反序列化时出错,字符串的长度超过了为 maxJsonLength 属性设置的值

使用JSON JavaScriptSerializer 进行序列化或反序列化时出错。字符串的长度超过了为 maxJsonLength属性

<system.web.extensions> <scripting> <webServices> <jsonSerialization maxJsonLength="1024000" /> </webServices> </scripting> </system.web.extensions> 使用 JSON JavaScriptSerializer 进行序列化或反序列化时出错.字符串的长度超过了为

使用 JSON JavaScriptSerializer 进行序列化或反序列化时出错。字符串的长度超过了为 maxJsonLength 属性设置的值

Type : System.InvalidOperationException, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 Message : 使用 JSON JavaScriptSerializer 进行序列化或反序列化时出错.字符串 的长度超过了为 maxJsonLength 属性设置的值. Source : System.Web.Extensions Help link : Dat

字符串的长度超过了为 maxJsonLength 属性设置的值

当出现类似标题的错误时,可以按照如下方法解决: 1. 检查是否传递的JSON字符串长度过长 2.增加JSON串的长度设置,设置如下: <system.web.extensions>     <scripting>       <webServices>         <jsonSerialization maxJsonLength="1024000" />       </webServices>     </scri

限制字符串长度

在开发web页面时,表单内字符串过长而超出规定长度会导致一些不必要的麻烦, 比如: 用户注册时系统限制的用户名只有8个英文字符,但是用户输入了10个或者更多的字符时, 就可能造成昵称页面显示错行,或者昵称被截断的问题. 下面是限制字符串长度的解决方案: 1,通过使用JavaScript原生的获取属性的方法: #id.getAttribute("data-length"); 来判断输入框的限制长度. 2,通过比对输入的长度与输入框的限制长度属性进行比较: if(输入长度 > 属性长