SQL变量长度
SQL code: --我有这样一个存储过程。 功能是行转列,现在我生成的动态SQL的长度已经超过了 我定义nvarchar(4000)所以后面很多SQL内容没显示出来,我改用了TEXT但是这个不支持@sql=@sql+字符串 格式。 很迷茫。。。。。 declare @sql nvarchar(4000) set @sql='select UserName as 姓名' select @sql=@sql+','+#StrTable2.ProductName+'=isnull(sum(case ProductsID when '''+cast(#StrTable2.id as nvarchar)+''' then Quantity end),0)' from #StrTable2 order by id set @sql=@sql+' from #StrTable group by UserID,UserName order by UserID'
varchar(8000) sql 2000就多定义几个变量 sql 2005就nvarchar(max) 建议使用 sqlserver2005及以上版本。 max类型的变量很好用! 可是我用的就是2000没办法。 多定义几个变量也不行啊。最后一个@SQL变量引用 varchar(8000) 这个也不行 因为他还是只读了 4000个字符 有人没有哦 这个问题真的比较棘手。 1.如果是sql2005以上版本使用varchar(max). 2.如果是sql2000,那么定义几个变量来存储字符串。最后exec(sql1+sql2+sql3) 还有注意SQl2005 中的varchar(max)不可与varchar(N)相加,这样会将varchar(max).类型转换为varchar(N)类型,同样会有4000字符的限制。 建议用SQL Server 2005 1、可以多个变量 拼接 2、用SQL SERVER 2005
相关问答:
执行的顺序: 1)文件浏览框(选择文件使用) 选择好文件后 点击一个导入按钮的时候 ,把上面上传框里的csv文件以一个ID为文件名,上传到**/**文件夹下 2)读取这个文件夹下的csv的文件,转换成sql 3 ......
我要做一个定点事件,是每天晚上12点就把三个表里的信息放入一个表里,我想用存储过程来写,怎么写呢?,那位高手帮帮忙吧,非常感谢! 用户名是唯一的 表A 字段 用户名:Name ,邮箱:Ema ......
sql我想得到一字符串为: sldkf|||sdeww erkv|||rltdk jemcl|||ligf 就是|||后面的字符有什么函数能得到吗?是在sql语句写的,不是在页面写的,那位高手来指教下,新手,谢谢 晕今天不是写了么 select parsen ......
--drop table #T1 --drop table #T2 create Table #T1(ID int, QueryID nvarchar(20), ResultID1 nvarchar(20), ResultID2 nvarchar(20)) create Table #T2(SortNo int, QueryID nvarchar(20), ResultID1 nv ......
Id Name Flag 1 张三 1 2 王五 3 3 张三 1 4 李四 2 5 张三 1 6 李四 2 我想输出的时候变成这样 Id Name Flag 1 张三 1 & ......