MySQL 插入数据报错 Incorrect string value

当在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: '\xE7\x94\xB7' 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: '\xE7\x94\xB7' 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=‘字典数据表’

接着我们再执行插入语句–可以看到成功执行:
在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/209673.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

MySQL使用函数和存储过程实现:向数据表快速插入大量测试数据

实现过程 1.创建表 CREATE TABLE user_info (id INT(11) NOT NULL AUTO_INCREMENT,name VARCHAR(20) DEFAULT NULL,age INT(3) DEFAULT NULL,pwd VARCHAR(20) DEFAULT NULL,phone_number VARCHAR(11) DEFAULT NULL,email VARCHAR(255) DEFAULT NULL,address VARCHAR(255) DEF…

鸿蒙学习之TypeScript 语法理解笔记

1、变量及数据类型 // string:字符串,单引号或双引号 let msg : string hello wprld console.log(msg:msg)// number:数值、整数、浮点let num :number 21console.log(num:num)//boolean:布尔let finished: boolean truecons…

替代AMS1117-ADJ可调输出线性稳压器(LDO)

1、概 述 PC1117-ADJ/1.2/1.5/1.8/2.5/2.85/3.3/5是最大输出电流为1A的低压降正向稳压器,其中 PC1117-ADJ是可调输出电压版,只需要两个外接电阻即可实现输出电压在1.25V~13.8V范围内的调节,而PC1117-1.2/1.5/1.8/2.5/2.85/3.3/5是固定输出1.…

[linux] kaggle 数据集用linux下载

你可以通过以下步骤获取Kaggle的下载链接并在Linux中进行下载: 首先,确保你已经安装了Python和Kaggle API。如果没有安装,你可以通过以下命令安装: pip install kaggle 接着,你需要在Kaggle网站上获取API Token。登录…

腾讯云手动下发指令到设备-用于设备调试

打开腾讯云API Explorer,Publish Msg https://console.cloud.tencent.com/api/explorer?Productiotcloud&Version2021-04-08&ActionPublishMessagehttps://console.cloud.tencent.com/api/explorer?Productiotcloud&Version2021-04-08&ActionPub…

iptalbes firewalld

一、IPtables介绍Iptables(以下简称Iptables)是unix/linux自带的一款优秀且开放源代码的完全自由的基于包过滤(对OSI模型的四层或者是四层以下进行过滤)的防火墙工具,它的功能十分强大,使用非常灵活,可以对流入和流出服务器的数据包进行很精细…

蓝桥杯-03-蓝桥杯学习计划

蓝桥杯-03-蓝桥杯学习计划 参考资料 相关文献 报了蓝桥杯比赛,几乎零基础,如何准备,请大牛指导一下。谢谢? 蓝桥杯2022各组真题汇总(完整可评测) 基础学习 C语言网 ACM竞赛入门,蓝桥杯竞赛指南 廖雪峰的官方官网 算法题单 洛谷…

深圳找工作的网站

深圳吉鹿力招聘网是一家在深圳做的比较好的招聘网站,提供一站式的专业人力资源服务,包括网络招聘、校园招聘、猎头服务、招聘外包、企业培训以及人才测评等。深圳吉鹿力招聘网在深圳的口碑相当好,是一个很好的选择。 深圳找工作用 吉鹿力招聘…

ssrf介绍、相关php函数及demo演示

SSRF系列 危害(利用) 漏洞判断 回显 延时 DNS请求 相关函数

Python的文件的读写操作【侯小啾Python基础领航计划 系列(二十七)】

Python_文件的读写操作【侯小啾Python基础领航计划 系列(二十七)】 大家好,我是博主侯小啾, 🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔…

燃烧效果:Burning Shader

NEW! Added HDRP 14.0 shaders NEW! Added HDRP 10.0 shaders NEW!

硬件基础:MOS管

MOSFET概述 MOSFET由MOS(Metal Oxide Semiconductor金属氧化物半导体)FET(Field Effect Transistor场效应晶体管)这个两个缩写组成,即全称为金属氧化物场效应管,简称MOS管。 即通过给金属层(M-金属铝)的栅极和隔着氧化层(O-绝缘层SiO2)的源极施加电压&am…

Intellij idea 快速定位到文件的开头或者结尾的几种方式

方式一:Scroll To Top / Scroll To Bottom 首先打开Keymap设置,并搜索Scroll To 依次点击File->Settings->Keymap可打开该界面 对于Scroll To Top 快速滑动定位到文件顶部, Scroll To Bottom快速定位到文件底部 默认是没有设置快捷键的…

虹科分享 | 平衡速度和优先级:为多样化的实时需求打造嵌入式网络(4)——从理论到实践:CANopen源代码配置

正如前文所述,CANopen的适应性在满足实时应用需求方面发挥着至关重要的作用。本系列文章的最后一部分将向您展示 CANopen 源代码配置的技术细节,以及实现高效实时性能的优化方法。 前文回顾: 虹科分享 | 平衡速度和优先级:为多样…

git打tag和版本控制规范

我们在开发中经常会遇到要打tag的情况,但这个tag应该如何打呢?我不知道大家平时是怎么打的,但我基本就是从1.0.0开始进行往上递增,至于如何递增,基本凭感觉。今天同事新打了一个tag进行发版,然后被架构点名…

博捷芯:半导体芯片切割,一道精细工艺的科技之门

在半导体制造的过程中,芯片切割是一道重要的环节,它不仅决定了芯片的尺寸和形状,还直接影响到芯片的性能和使用效果。随着科技的不断进步,芯片切割技术也在不断发展,成为半导体制造领域中一道精细工艺的科技之门。 芯片…

git的安装及ssh配置(Linux)

环境 CentOS Linux release 7.9.2009 (Core) Xftp7 安装 方法一:yum安装 yum是一个客户端软件,就好比手机上的应用商店,帮助我们对软件的下载、安装和卸载 1、首先查看自己是否安装过git [rootxiaoxi ~]# git -bash: git: command not fo…

小米秒享3--非小米电脑

小米妙享中心是小米最新推出的一款功能,能够为用户们提供更加舒适便利的操作体验。简单的说可以让你的笔记本和你的小米手机联动,比如你在手机的文档,连接小米共享后,可以通过电脑进行操作。 对于非小米电脑想要体验终版秒享AIOT…

如何使用内网穿透工具实现公网访问GeoServe Web管理界面

文章目录 前言1.安装GeoServer2. windows 安装 cpolar3. 创建公网访问地址4. 公网访问Geo Servcer服务5. 固定公网HTTP地址6. 结语 前言 GeoServer是OGC Web服务器规范的J2EE实现,利用GeoServer可以方便地发布地图数据,允许用户对要素数据进行更新、删除…

第九节HarmonyOS 常用基础组件1-Text

一、组件介绍 组件(Component)是界面搭建与显示的最小单位,HarmonyOS ArkUI声名式为开发者提供了丰富多样的UI组件,我们可以使用这些组件轻松的编写出更加丰富、漂亮的界面。 组件根据功能可以分为以下五大类:基础组件…