gpt4 book ai didi

sql-server-2005 - SSMS 和 SQLCMD 仅显示前 8000 个字符

转载 作者:行者123 更新时间:2023-12-04 07:13:58 25 4
gpt4 key购买 nike

在 SSMS 中,当我尝试执行时:

SELECT CONVERT(VARCHAR(MAX), REPLICATE('a',9000))    

我只看到显示的前 8000 个字符。设置工具>>选项>>查询结果>>Sql Server>>结果到网格设置为65534,结果到文本设置为8192。

此外,当我尝试从 SQLCMD 运行此命令时

sqlcmd -S Server -E -y 0 -Q "SELECT CONVERT(VARCHAR(MAX), REPLICATE('a',9000))" -o out.txt

我只看到 8000 个字符。

标志 -y 0 应该将其设置为 1 MB。但我不超过8000个字符。

可能是什么问题?

谢谢,
_UB

最佳答案

REPLICATE输出基于数据类型输入。这解释了 sqlcmd。

If string expression is not of type varchar(max) or nvarchar(max), REPLICATE truncates the return value at 8,000 bytes. To return values greater than 8,000 bytes, string expression must be explicitly cast to the appropriate large-value data type.

所以,使用这个SELECT REPLICATE(CONVERT(VARCHAR(MAX), 'a'), 9000)

SSMS 从未显示所有文本数据(查询分析器也没有)

关于sql-server-2005 - SSMS 和 SQLCMD 仅显示前 8000 个字符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1364319/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com