动态SQL脚本超过8000个Charachters

时间:2016-06-02 09:28:03

标签: sql sql-server sql-server-2008

我有一个包含8000多个字符的SQL脚本,并将其存储在某些VARCHAR(MAX)中。当使用:

执行时
EXEC (@script1 + @script2 + @script3 + ...)

返回0行受影响。

我尝试使用replicate并得到同样的问题。我正在使用SQL Server 2008.任何人都可以帮助我吗?

1 个答案:

答案 0 :(得分:2)

试试sp_executesql

  

在64位服务器上,字符串的大小限制为2 GB,最大大小为nvarchar(max)。

所以将所有数据放在@SQLString变量中并执行如下:

DECLARE @SQLString nvarchar(max);

SET @SQLString = @script1 + @script2 + @script3 + ...

EXECUTE sp_executesql @SQLString