注册

关于varchar的长度问题

果不其蓝 2022/11/28 1598 5

为提高效率,提问时请提供以下信息,问题描述清晰可优先响应。
【DM版本】: DM8 20221027
【操作系统】: linux
【CPU】: 4
【问题描述】*: 我定义的varchar(8000),期望它能存入8000个中文字符, 实际上并不能到8000,这是改哪个配置的?
下面是我的数据库初始化相关配置

./dminit path=/opt/dm8/data DB_NAME=TEST CASE_SENSITIVE=0 LENGTH_IN_CHAR=0 INSTANCE_NAME=TEST PAGE_SIZE=32 CHARSET=1 LOG_PATH=/opt/dm8/log/TEST01.log LOG_PATH=/opt/dm8/log/TEST02.log
这是我的初始化命令。
执行之后我还修改了dm.ini上的配置:
COMPATIBLE_MODE 将它的值由0改为4
MY_STRICT_TABLES 将它的值由0改为1

drop table if exists tmp_varchar;
create table tmp_varchar(
id int,
test_varchar varchar(8000),
test_varchar8 varchar(8)
);
– 这里是可以执行插入10个字符的。
insert into tmp_varchar(id, test_varchar8) values(10, ‘八字长度八字长度八字’);

– 下面的这个只能到5400不到的字符
insert into tmp_varchar(id, test_varchar) values(8000, ‘这里填了8000字符,’);

回答 0
暂无回答
扫一扫
联系客服