mysql 字符串编码_MySQL字符编码集(乱码)问题解决

1、创建MySQL数据库

1 CREATE DATABASE`test`2 CHARACTER SET 'utf8'

3 COLLATE 'utf8_general_ci';

创建表

1 CREATE TABLEtp_wechatlocation2 (3 ID INT NOT NULLAUTO_INCREMENT,4 OpenID VARCHAR(50),5 Latitude VARCHAR(10),6 Longitude VARCHAR(10),7 CityName VARCHAR(30),8 CreateTime DATETIME,9 PRIMARY KEY(ID)10 )ENGINE=INNODB DEFAULT CHARSET=utf8;

设置表的默认字符编码集:ENGINE=INNODB DEFAULT CHARSET=utf8

如果在创建数据后面不加设置默认表的字符编码集就会出现如下图“CityName”乱码问题

58cb128411e695efc8ead119eba66936.png

2、解决

通过sql语句主动设置表的字符编码集。

默认编码为utf8:ALTER TABLE 表名 DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci;

ansi(即GBK或GB2312):ALTER DATABASE `db_name` DEFAULT CHARACTER SET gbk COLLATE gbk_chinese_ci;

修改列的默认字符编码集:

ALTER TABLE tp_wechatlocation MODIFY CityName VARCHAR(30)CHARACTER SET utf8 COLLATE utf8_general_ci;

3、dos下不支持UTF8的显示

Linux系统下设置字符集:

中文设置:export LANG=zh_CN.GB2312

英文设置:export LANG=zh_CN.UTF-8

4、查看字符编码集

查看当前数据库的相关编码集:SHOW VARIABLES LIKE 'character%';

Variable_name            Value

------------------------  -----------------------------------------------

character_set_client      utf8

character_set_connection  utf8

character_set_database    latin1

character_set_filesystem  binary

character_set_results    utf8

character_set_server      utf8

character_set_system      utf8

character_sets_dir        E:\wamp\bin\mysql\mysql5.5.20\share\charsets\

查看表:show create table yjdb;

0b1331709591d260c1c78e86d0c51c18.png

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值