insert into sys_dict_data values(1, 1, '男', '0', 'sys_user_sex', '', '', 'Y', '0', 'admin', sysdate(), '', null, '性别男');
insert into sys_dict_data values(1, 1, '男', '0', 'sys_user_sex', '', '', 'Y', '0', 'admin', sysdate(), '', null, '性别男')
> 1366 - Incorrect string value: 'xE7x94xB7' for column 'dict_label' at row 1
时间: 0.001s
报错解释:在向sys_dict_data表中的插入数据时,字段dict_label,不支持UTF-8编码;
验证:查看表
SHOW CREATE TABLE sys_dict_data;
结果如下:
CREATE TABLE
sys_dict_data
(
dict_code
bigint(20) NOT NULL AUTO_INCREMENT COMMENT ‘字典编码’,
dict_sort
int(4) DEFAULT ‘0’ COMMENT ‘字典排序’,
dict_label
varchar(100) DEFAULT ‘’ COMMENT ‘字典标签’,
dict_value
varchar(100) DEFAULT ‘’ COMMENT ‘字典键值’,
dict_type
varchar(100) DEFAULT ‘’ COMMENT ‘字典类型’,
css_class
varchar(100) DEFAULT NULL COMMENT ‘样式属性(其他样式扩展)’,
list_class
varchar(100) DEFAULT NULL COMMENT ‘表格回显样式’,
is_default
char(1) DEFAULT ‘N’ COMMENT ‘是否默认(Y是 N否)’,
status
char(1) DEFAULT ‘0’ COMMENT ‘状态(0正常 1停用)’,
create_by
varchar(64) DEFAULT ‘’ COMMENT ‘创建者’,
create_time
datetime DEFAULT NULL COMMENT ‘创建时间’,
update_by
varchar(64) DEFAULT ‘’ COMMENT ‘更新者’,
update_time
datetime DEFAULT NULL COMMENT ‘更新时间’,
remark
varchar(500) DEFAULT NULL COMMENT ‘备注’,
PRIMARY KEY (dict_code
)
) ENGINE=InnoDB DEFAULT CHARSET=latin1 COMMENT=‘字典数据表’
1.“CHARSET” 是字符集的意思,它定义了用于存储和检索数据的字符集。 “latin1” 是一种字符集,它支持包括英文字母、数字、特殊字符等在内的基本西欧字符。
2.在数据库中设置 “CHARSET=latin1” 表示您正在使用 latin1 字符集来存储和检索数据。这对于包含西欧字符的数据比较合适。
3.需要注意的是,latin1 字符集不支持诸如中文、日文等非西欧字符。如果您需要存储这类字符,可能需要选择支持多字节字符集(如 UTF-8)的数据库。
解决方案:
修改字符集,把sys_dict_data 表的字符集进行修改(语句如下)
ALTER TABLE sys_dict_data CONVERT TO CHARACTER SET utf8; --修改表的字符集
再看表结果:
CREATE TABLE
sys_dict_data
(
dict_code
bigint(20) NOT NULL AUTO_INCREMENT COMMENT ‘字典编码’,
dict_sort
int(4) DEFAULT ‘0’ COMMENT ‘字典排序’,
dict_label
varchar(100) DEFAULT ‘’ COMMENT ‘字典标签’,
dict_value
varchar(100) DEFAULT ‘’ COMMENT ‘字典键值’,
dict_type
varchar(100) DEFAULT ‘’ COMMENT ‘字典类型’,
css_class
varchar(100) DEFAULT NULL COMMENT ‘样式属性(其他样式扩展)’,
list_class
varchar(100) DEFAULT NULL COMMENT ‘表格回显样式’,
is_default
char(1) DEFAULT ‘N’ COMMENT ‘是否默认(Y是 N否)’,
status
char(1) DEFAULT ‘0’ COMMENT ‘状态(0正常 1停用)’,
create_by
varchar(64) DEFAULT ‘’ COMMENT ‘创建者’,
create_time
datetime DEFAULT NULL COMMENT ‘创建时间’,
update_by
varchar(64) DEFAULT ‘’ COMMENT ‘更新者’,
update_time
datetime DEFAULT NULL COMMENT ‘更新时间’,
remark
varchar(500) DEFAULT NULL COMMENT ‘备注’,
PRIMARY KEY (dict_code
)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT=‘字典数据表’
接着我们再执行插入语句–可以看到成功执行:
当在sys_dict_data表中执行插入语句;
insert into sys_dict_data values(1, 1, '男', '0', 'sys_user_sex', '', '', 'Y', '0', 'admin', sysdate(), '', null, '性别男');
报错信息如下:
insert into sys_dict_data values(1, 1, '男', '0', 'sys_user_sex', '', '', 'Y', '0', 'admin', sysdate(), '', null, '性别男')
> 1366 - Incorrect string value: 'xE7x94xB7' for column 'dict_label' at row 1
时间: 0.001s
报错解释:在向sys_dict_data表中的插入数据时,字段dict_label,不支持UTF-8编码;
验证:查看表
SHOW CREATE TABLE sys_dict_data;
结果如下:
CREATE TABLE
sys_dict_data
(
dict_code
bigint(20) NOT NULL AUTO_INCREMENT COMMENT ‘字典编码’,
dict_sort
int(4) DEFAULT ‘0’ COMMENT ‘字典排序’,
dict_label
varchar(100) DEFAULT ‘’ COMMENT ‘字典标签’,
dict_value
varchar(100) DEFAULT ‘’ COMMENT ‘字典键值’,
dict_type
varchar(100) DEFAULT ‘’ COMMENT ‘字典类型’,
css_class
varchar(100) DEFAULT NULL COMMENT ‘样式属性(其他样式扩展)’,
list_class
varchar(100) DEFAULT NULL COMMENT ‘表格回显样式’,
is_default
char(1) DEFAULT ‘N’ COMMENT ‘是否默认(Y是 N否)’,
status
char(1) DEFAULT ‘0’ COMMENT ‘状态(0正常 1停用)’,
create_by
varchar(64) DEFAULT ‘’ COMMENT ‘创建者’,
create_time
datetime DEFAULT NULL COMMENT ‘创建时间’,
update_by
varchar(64) DEFAULT ‘’ COMMENT ‘更新者’,
update_time
datetime DEFAULT NULL COMMENT ‘更新时间’,
remark
varchar(500) DEFAULT NULL COMMENT ‘备注’,
PRIMARY KEY (dict_code
)
) ENGINE=InnoDB DEFAULT CHARSET=latin1 COMMENT=‘字典数据表’
1.“CHARSET” 是字符集的意思,它定义了用于存储和检索数据的字符集。 “latin1” 是一种字符集,它支持包括英文字母、数字、特殊字符等在内的基本西欧字符。
2.在数据库中设置 “CHARSET=latin1” 表示您正在使用 latin1 字符集来存储和检索数据。这对于包含西欧字符的数据比较合适。
3.需要注意的是,latin1 字符集不支持诸如中文、日文等非西欧字符。如果您需要存储这类字符,可能需要选择支持多字节字符集(如 UTF-8)的数据库。
解决方案:
修改字符集,把sys_dict_data 表的字符集进行修改(语句如下)
ALTER TABLE sys_dict_data CONVERT TO CHARACTER SET utf8; --修改表的字符集
再看表结果:
CREATE TABLE
sys_dict_data
(
dict_code
bigint(20) NOT NULL AUTO_INCREMENT COMMENT ‘字典编码’,
dict_sort
int(4) DEFAULT ‘0’ COMMENT ‘字典排序’,
dict_label
varchar(100) DEFAULT ‘’ COMMENT ‘字典标签’,
dict_value
varchar(100) DEFAULT ‘’ COMMENT ‘字典键值’,
dict_type
varchar(100) DEFAULT ‘’ COMMENT ‘字典类型’,
css_class
varchar(100) DEFAULT NULL COMMENT ‘样式属性(其他样式扩展)’,
list_class
varchar(100) DEFAULT NULL COMMENT ‘表格回显样式’,
is_default
char(1) DEFAULT ‘N’ COMMENT ‘是否默认(Y是 N否)’,
status
char(1) DEFAULT ‘0’ COMMENT ‘状态(0正常 1停用)’,
create_by
varchar(64) DEFAULT ‘’ COMMENT ‘创建者’,
create_time
datetime DEFAULT NULL COMMENT ‘创建时间’,
update_by
varchar(64) DEFAULT ‘’ COMMENT ‘更新者’,
update_time
datetime DEFAULT NULL COMMENT ‘更新时间’,
remark
varchar(500) DEFAULT NULL COMMENT ‘备注’,
PRIMARY KEY (dict_code
)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT=‘字典数据表’
原文地址:https://blog.csdn.net/u010553139/article/details/134689688
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若转载,请注明出处:http://www.7code.cn/show_7045.html
如若内容造成侵权/违法违规/事实不符,请联系代码007邮箱:suwngjj01@126.com进行投诉反馈,一经查实,立即删除!