0
我生成一个大约25K字符长的sql字符串select语句。不幸的是,生产服务器是SQL 2000.
是我唯一的选择将字符串分解为4k nvarchars吗?如何在SQL Server 2000上执行非常长的动态sql语句?
--ex.
DECLARE @s1 NVARCHAR(4000)
DECLARE @s2 NVARCHAR(4000)
DECLARE @s3 NVARCHAR(4000)
DECLARE @s4 NVARCHAR(4000)
DECLARE @s5 NVARCHAR(4000)
DECLARE @s6 NVARCHAR(4000)
DECLARE @s7 NVARCHAR(4000)
--fill nvarchars
EXEC @s1 + @s2 + @s3 + @s4 + @s5 + @s6 + @s7
我发布此之前,http://stackoverflow.com/questions/3190423/how-do-i-execute-a-very-long-dynamic-sql-statement但解决方案是为sql server 2005. – 2010-07-21 20:45:10
我是将使用WITH语句来建议发布部分以查看查询是否可以最小化,但是它们在2000年不支持:(难道没有办法无法修剪吗?我发现Oracle的动态SQL在解释空白方面存在问题/空格字符... – 2010-07-21 20:47:56
嗯,也许我可以创建一个临时表的结果,并逐一添加列... – 2010-07-21 21:08:46