添加一条记录:

insert into student values(1,’张三’); 

报错:

mysql> insert into student values(1,’张三’);

ERROR 1366 (HY000): Incorrect string value: ‘\xD5\xC5\xC8\xFD’ for column ‘name’ at

row 1

 

查看表的创建信息:

show create table 表名称\G

#查看student表的详细创建信息

show create table student\G

#结果如下

*************************** 1. row ***************************

Table: student

Create Table: CREATE TABLE `student` (

`id` int(11) DEFAULT NULL,

`name` varchar(20) DEFAULT NULL

) ENGINE=InnoDB DEFAULT CHARSET=latin1

1 row in set (0.00 sec)

查看数据库的创建信息:

show create database 数据库名\G

#查看atguigudb数据库的详细创建信息

show create database atguigudb\G

#结果如下

*************************** 1. row ***************************

Database: atguigudb

Create Database: CREATE DATABASE `atguigudb` /*!40100 DEFAULT CHARACTER SET latin1 */

1 row in set (0.00 sec)

问题解决:

  • 步骤1:查看编码命令
show variables like ‘character_%’;

show variables like ‘collation_%’;

  • 步骤2:修改mysql的数据目录下的my.ini配置文件
[mysql] #大概在63行左右,在其下添加

default-character-set=utf8 #默认字符集

[mysqld] # 大概在76行左右,在其下添加

character-set-server=utf8

collation-server=utf8_general_ci

  • 步骤3:重启服务
  • 步骤4:查看编码命令
show variables like ‘character_%’;

show variables like ‘collation_%’;