DECLARE @str VARCHAR (MAX);
SELECT @str = COALESCE(@str + CHAR(10), '') +
'EXECUTE CreateDeno ' + CAST(ID AS VARCHAR)
FROM GL_To_Batch_Details
WHERE TYPE = 'C' AND
Deno_ID IS NULL;
--PRINT @str;--SELECT @str;
**EXEC(@str);**
已编辑
是否
EXECUTE
语句将字符串截断为 8,000 个字符,如 PRINT
?如何执行超过 8,000 个字符的动态 SQL 语句?任何建议将不胜感激。
最佳答案
PRINT
输出限制为 8k。
SSMS 结果 Pane 中也有 8k 的限制。
去
工具 -> 选项 -> 查询结果
查看选项。
要验证实际数据的长度,请检查:SELECT LEN(@str)
关于tsql - T-SQL VARCHAR(MAX) 被截断,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7392161/