MySQL字符集问题,如何修改库、表的字符集,插入中文报错??

一、查看字符集

1.查看mysql所有的字符集

方法一:
show variables like '%char%';
方法二:
show variables like 'collation%';
结果如下:
在这里插入图片描述
我们发现,MySQL默认的客户端,服务端,连接端等都是gbk和latin1字符集。
如果需要修改,可以按照下面语法
set character_set_server=utf8;

1.1查看库的字符集

show create database 数据库名\G;

1.2查看表的字符集

语法:
show table status from 库名 like 表名;

1.3查看表中所有列的字符集

语法:
show full columns from 表名;

二、设置字符集

2.1创建时指定字符集

create database 库名 default character set=字符集;

2.2修改数据库字符集

alter database 数据库名 character set utf8;

2.2修改表字符集

ALTER TABLE 表名 DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci;
或者,
alter table 表名 convert to character set 字符集;

2.3修改列字符集

ALTER TABLE 表名 CHANGE 列名 列名 VARCHAR( 100 ) CHARACTER SET utf8 “COLLATE utf8_general_ci NULL DEFAULT NULL”;#(引号内可有可无)

2.4修改字段的字符集

alter table 表名 modify 字段名 字段属性 character set gbk;

注意

当插入中文时候,一直出现Incorrect string value: ‘\xE5\xBC\xA0\xE4\xB8\x89’ for column ‘name’ at row 1,而以上该修改的字符集都修改成utf8后,还是错误,估计就需要把mysql重启一下了。

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值