mysql数据库字符编码选择导致的异常— Incorrect string value: '\xE5\x8D\x97\xE5\xB2\x97...' for column

Mysql2::Error: Incorrect string value: '\xE5\x8D\x97\xE5\xB2\x97...' for column 'value' at row 1: INSERT INTO settings (created_at, updated_at, value, var) VALUES

报错原因分析:
这个异常主要是由于数据库的字符编码选择错误造成
在创建数据库时,由于没有指定编码(utf-8,MySQL的默认编码是Latin1,不支持中文,所以要修改为utf8的字符编码!所以,在创建数据库时,指定字符集:
create database my_db_name character set utf8 ;
出现上述报错,如果本地有数据库文件(.sql),可以选择重新创建一个数据库,在导入一次。

导入
打开终端输入:(前提是已经配置过MySQL环境变量)
mysql -u root -p
create database my_db_name; (记得加 ;默认是latin1编码,不支持中文)
如果需要输入中文,请指定编码:上述语句换成下面的即可
create database my_db_name character set utf8 ;
use name;
source (将.sql文件直接拖拽至此)
导出
打开 终端 输入:
cd 打开要将.sql文件生成的文件位置
mysqldump -u root -p database_name>sql_name.sql

mysql数据库字符编码选择导致的异常— Incorrect string value: '\xE5\x8D\x97\xE5\xB2\x97...' for column_第1张图片
image.png

你可能感兴趣的:(mysql数据库字符编码选择导致的异常— Incorrect string value: '\xE5\x8D\x97\xE5\xB2\x97...' for column)