动态 SQL 脚本超过 8000 个字符



我有一个超过8000个字符的SQL脚本,我把它存储在一些VARCHAR(MAX)中。当使用以下命令执行它时:

EXEC (@script1 + @script2 + @script3 + ...)

它的返回 0 行受到影响。

我尝试使用复制并遇到同样的问题。我正在使用 SQL Server 2008。

尝试sp_executesql .

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

因此,将所有数据放入变量@SQLString并执行以下操作:

DECLARE @SQLString nvarchar(max);
SET @SQLString = @script1 + @script2 + @script3 + ...
EXECUTE sp_executesql @SQLString

最新更新