mysql修改数据库编码格式

遇到的问题描述:向数据库插入中文时出现:[Err] 1366 - Incorrect string value: ‘\xE6\x9B\xBE\xE5\x8D\x8E’ for column ‘sname’ at row 1

解决办法:将该表中的sname这一列的字符集都改为utf-8

首先运行下列代码,查看students 表中每一个字段的字符集

show full columns from students 

以下三种方法:分别是修改数据库、表、表中的某一个字段的编码格式

1.修改整个数据库的编码格式
注意:如果数据不重要的话,可以直接使用更改数据库的编码格式,再重新建表即可。(此例中的数据库是test)

alter database test character set utf8

2.修改整张表的编码格式
注意:如果数据是重要数据的话,执行下列代码把整张表编码格式转换成utf8即可(此例中的数据表是students)

alter table students convert to character set utf8

3.修改students 表中sname 字段的编码格式
注意:第一个sanme是要给表中的sname字段修改编码格式。
   第二个sname varchar(64)是要修改的字段名和字段类型(一般和原表中一样,不会做修改)
   not null是修改sname不能为空的。(可以选择不加)

alter table students change sname sname varchar(64) character set utf8 not null;
  • 3
    点赞
  • 19
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值