SQL 服务器 varchar(max) 工作不正常
SQL Server varchar(max) is not working properly
在下面的示例中,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);
那应该在 table.
中给你一个长度为 16'000 个字符的字符串
在下面的示例中,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);
那应该在 table.
中给你一个长度为 16'000 个字符的字符串