gpt4 book ai didi

sql - 如何存储大于varchar(max)的字符串var?

转载 作者:行者123 更新时间:2023-12-03 21:15:55 25 4
gpt4 key购买 nike

我正在尝试这样做:

DECLARE @myVar VARCHAR(MAX)
Loop with cursor
select @myVar = @myVar + bla bla bla
end loop

循环结束时,@ myVar不完整,仅包含8000个字符。

我尝试使用文本,但是不允许使用本地变量。

对这种情况有什么好的解决方案?

xml var?

我刚刚看了这篇文章:

How do I pass a string parameter greater than varchar(8000) in SQL Server 2000?

Check if concatenating to a varchar(max) will go beyond max allowable characters

和其他人通过网络。

问候。

最佳答案

认真的说-VARCHAR(MAX)最多可以存储2 GB的数据-不只是8000个字符.....

尝试这个:

DECLARE @myVar VARCHAR(MAX) = ''

DECLARE @ix INT = 1

WHILE @ix < 1000
BEGIN
set @myVar = @myVar + CAST('bla bla bla' AS VARCHAR(MAX))
SET @ix = @ix + 1
END

SELECT DATALENGTH(@myvar)

经过1000次迭代后,返回的 值将比8000个字符高

关键是:如果使用的是 varchar(max),则需要确保始终 将所有字符串显式地转换显式地转换为 varchar(max),就像我在本示例中所做的那样。否则,SQL Server将退回到“常规” varchar处理,并且实际上限制为8000个字符...。

关于sql - 如何存储大于varchar(max)的字符串var?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12097670/

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