tsql - T-SQL VARCHAR(MAX) 被截断

标签 tsql

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/

相关文章:

sql - T-SQL 中的大括号

sql-server-2008 - 在 T-SQL 中将表分解为 2 列

sql-server - ORDER BY 子句中的 T-SQL IF 语句

tsql - 一个大调用与多个较小的 TSQL 调用

database - 数据库中有新条目后自动创建 PDF

sql - 如何在 SQL Server 中对别名列执行 GROUP BY?

sql-server - 如何更改表值参数

sql-server - T-SQL 从字符串中返回每隔一个字符

sql - 计算比率只能给出0或1?

tsql - 如何确定 MS SQL Server 2005 中表值变量的内部名称