【发布时间】:2012-08-19 07:48:45
【问题描述】:
我正在尝试这样做:
DECLARE @myVar VARCHAR(MAX)
Loop with cursor
select @myVar = @myVar + bla bla bla
end loop
循环结束时,@myVar 不完整,仅包含 8000 个字符。
我尝试使用文本,但不允许使用本地变量。
对于这种情况有什么好的解决方案?
xml 变量?
我刚刚看过这个帖子:
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 的数据 - 20 亿个字符 - 比列夫·托尔斯泰 (Leo Tolstoj) 的整个 战争与和平 小说的大小超过 200 倍......这就是 对你来说不够大?!? -
@marc_s:问题似乎是在问为什么poster的变量在循环结束时只包含8000个字符;我认为标题具有误导性。也许发帖人可以编辑以澄清这里到底要问什么。
-
@KenWhite:请参阅我的回复以了解如何解决此问题。
-
你是如何测试长度的?
-
@marc_s:看到了,点了赞。我只是想澄清张贴者实际上在问什么(并试图让他们编辑问题以这样做)。
标签: sql sql-server-2005 max varchar string-concatenation