在项目中向MySQL插入数据时.发现数据插入不完整,通过调试,发现插入语句也没什么特殊的错误. 可是就是差不进去,于是就打开mysqli错误的调试 $ret = mysqli_query($this->conn, $sql) or die(mysqli_error($this->conn)); 结果弹出例如以下错误信息: Incorrect string value: '\xF0\x9F\x92\x8BTi...' 有错误信息就好办了,结果上网一查结果是:mysql编码格式utf-8格式,不支…
背景: 用户输入的表单里边.存在 手机自带的表情,  在执行插入时候报错 Incorrect string value: '\xF0\x9F\x92\x8BTi...' 错误原因:我们在设置mysql编码格式时一般 utf-8 格式,是不支持带四字节的字符串插入的. 解决方法: 1.升级MySQL,然后将对应的数据类型改为utf8mb4类型(mysql 版本 >= 5.5) 2.出现的四字节UTF-8字符过滤或转化为自定义类型 方法1  : (不能只改表名字的编码而忽略了字段的编码,亲测.必须两…
一.背景 1.java项目,name含有表情插入到mysql数据库中报错   Incorrect string value: '\xF0\x9F\x92\x8BTi.. 2.解决办法 (1)将字符串中的不合法字符替换掉 content = content.replaceAll("[\\x{10000}-\\x{10FFFF}]", ""); (2)修改字段或者表的字符集为 utf8mb4 alter table `table_name`  convert to ch…
这是我的表结构 mysql> describe students; +--------+---------------------+------+-----+---------+----------------+ | Field | Type | Null | Key | Default | Extra | +--------+---------------------+------+-----+---------+----------------+ | id | int(10) unsigne…
在本地通过MYSQL创建测试表 CREATE Table User ( UserId int not NULL PRIMARY KEY auto_increment, //主键自增 UserName VARCHAR() not null, Pwd VARCHAR() not NULL, Age int not null ); 然后插入数据的时候: INSERT into USER(UserName,Pwd,Age) VALUES(); 提示错误信息: ERROR 1366 (HY000)错误类型…
今天使用mysql出现 Incorrect string value: '\xE8\xA7\x84\xE5\x88\x99' for column 'name' 异常 通过查找问题,发现是字段编码不支持中文.于是把表的编码设置支持中文即可. 第一次的表: "create table  friendsList (id varchar(7) primary key,name varchar(20)) ;" 第二次修改后的表 "create table  friendsList (…
这个问题,原因是UTF-8编码有可能是两个.三个.四个字节.Emoji表情或者某些特殊字符是4个字节,而MySQL的utf8编码最多3个字节,所以数据插不进去. 我的解决方案是这样的 1.在mysql的安装目录下找到my.ini,作如下修改: [mysqld] character-set-server=utf8mb4 [mysql] default-character-set=utf8mb4 修改后重启Mysql 2. 将已经建好的表也转换成utf8mb4 命令:alter table TABL…
需要修改Mysql的配置文件my.ini,在[mysqld]下添加/修改两行:tmp_table_size = 256Mmax_heap_table_size = 256M…
问题:Mysql插入数据里有中文字符出现Incorrect string value的错误   描述:CMD里直接敲代码插入数据   提示的部分截取为:ERROR 1366 (HY000): Incorrect string value   一般都是编码问题,show variables like 'character%' 查看后,发现所有编码都为UTF8,并没有错.   也有一种可能是CMD黑窗口的文字编码问题,试着先设置客户端命令的编码,再插入果然正确!然后百度搜索客户端编码相关的问题也发现…