使用Ubuntu在安装好MySQL数据库之后,如果直接创建数据库,再创建数据表,那么是无法向字段插入中文的,会报Incorrect string value错误。

c实现编码设置的两种方法:

SRE实战 互联网时代守护先锋,助力企业售后服务体系运筹帷幄!一键直达领取阿里云限量特价优惠。

(1)动态设置

  创建数据库:

  CREATE DATABASE PyDB

  CHARACTER SET 'utf8'

  COLLATE 'utf8_general_ci';

  选择此数据库:

  USE PyDB;

  创建表:

  CREATE TABLE PyTable (

  username VARCHAR(10),

  useraddr VARCHAR(10)

  )ENGINE=InnoDB DEFAULT CHARSET=utf8;

(2)改变默认编码

  在mysql下,先执行命令:SHOW variables LIKE '%char%';

  查看数据库默认编码是latin1。

  以root身份更改mysql的配置文件

  在/etc/my.cnf 或 /etc/mysql/my.cnf 添加以下指令并保存:

  [client]

  default-character-set = utf8

  [mysqld]

  default-storage-engine = INNODB

  character-set-server = utf8

  collation-server = utf8_general_ci

  然后重启mysql:service mysql restart

  再次查看:SHOW variables LIKE '%char%';

  可以看到编码已经是UTF8。

扫码关注我们
微信号:SRE实战
拒绝背锅 运筹帷幄