c++ linux 如何把 char* 里面的中文 insert进入mysql(相应的字段为varchar类型)
来源:互联网 发布:武汉农村商业银行网络 编辑:程序博客网 时间:2024/05/29 11:36
首先, show variables like 'char%';来检查字符集:
+--------------------------+----------------------------+
| Variable_name | Value |
+--------------------------+----------------------------+
| character_set_client | latin1 |
| character_set_connection | latin1 |
| character_set_database | utf8 |
| character_set_filesystem | binary |
| character_set_results | latin1 |
| character_set_server | utf8 |
| character_set_system | utf8 |
其次,修改方式有两个:
第一种,单次有效,直接在mysql命令行输入:set names 'utf8';
第二种,永久有效,在my.cnf配置:
[mysqld]
datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock
user=mysql
# Disabling symbolic-links is recommended to prevent assorted security risks
symbolic-links=0
default-character-set=utf8
[mysql.server]
default-character-set=utf8
[mysqld_safe]
log-error=/var/log/mysqld.log
pid-file=/var/run/mysqld/mysqld.pid
default-character-set=utf8
[client]
default-character-set=utf8
原理讲解:
mysql内部会有多次字符集的转换:
第一次mysql客户端到mysql connection的转换,第二次mysql connection到mysql server的转换;
所有上面第一张表的Variable_name经过那两种配置方式后,就变成了:
mysql> show variables like 'char%';
+--------------------------+----------------------------+
| Variable_name | Value |
+--------------------------+----------------------------+
| character_set_client | utf8 |
| character_set_connection | utf8 |
| character_set_database | utf8 |
| character_set_filesystem | binary |
| character_set_results | utf8 |
| character_set_server | utf8 |
- c++ linux 如何把 char* 里面的中文 insert进入mysql(相应的字段为varchar类型)
- MYSQL中字段char类型和varchar类型的区别
- mysql字段类型选择时char和varchar如何选择
- MySQL 字段类型varchar,CHAR,text
- 【MySQL之字段类型(一)】MySQL中char和varchar的区别,以及varchar最大长度是多少?
- MySQL里面的字段类型
- 解答MySQL字段类型varchar和char最核心的两大疑问
- 解答MySQL字段类型varchar和char最核心的两大疑问
- 字段类型的存储(char和varchar)比较
- Mysql数据库中把varchar类型转化为int类型的方法
- Mysql数据库中把varchar类型转化为int类型的方法
- Mysql数据库中varchar类型和char类型的区别
- mysql中varchar类型和char类型的区别
- 如何varchar类型的字段存储中文汉字(SQL Server 2008/2008 R2/2012)
- 数据库中的char类型的字段与number,varchar类型字段查询
- MySQL的char和varchar类型的区别
- mysql数据库中char与varchar类型的区别
- Mysql 创建字段为varchar类型,但是保存中文数据时报1366错误
- SQL 之面试宝典
- 自己删除电信软件,C8650 Root超简单教程
- JAVA文件IO流的理解(二)
- 序列化类型为XX的对象时检测到循环引用。
- 游标简介
- c++ linux 如何把 char* 里面的中文 insert进入mysql(相应的字段为varchar类型)
- Endpoint Interrupts 操作入门
- 用grappelli美化Django Admin后台管理界面
- socket通信小结
- Vim 我常用的命令和插件
- 数字频率,模拟频率,模拟角频率
- SQL基础1——select查询
- samba 服务器的搭建
- 获取包下的所有类