在以下示例中,txt 列长度未正确显示。
CREATE TABLE dbo.test
(
Id int IDENTITY,
txt varchar(max)
);
insert into test(txt) select REPLICATE('0',8000);
insert into test(txt) select REPLICATE('00',8000);
select id, len(txt) from test;
drop table test;
两者显示的结果均为 8000。
有人可以帮忙吗?
最佳答案
如果您想在 varchar(max)
列中插入某些内容 - 您的插入代码需要将其显式转换为 varchar(max)
- 请尝试以下操作:
insert into test(txt) select REPLICATE(cast('00' as varchar(max)), 8000);
这应该会在表中给出一个长度为 16,000 个字符的字符串。
关于sql-server - SQL Server varchar(max) 无法正常工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62180460/