c++ mysql中文乱码_MySQL插入中文不乱码的5种方法

本文介绍了在C++使用MySQL时遇到中文乱码问题的五种解决方案,包括在MySQL会话中设置字符集、在SQL文件中指定字符集、通过MySQL命令行导入时设置字符集、通过命令行参数指定字符集,以及修改MySQL配置文件永久设置字符集。重点强调了在不同阶段设置字符集的重要性,以确保中文数据正确存储和显示。
摘要由CSDN通过智能技术生成

方法一:

登录MySQL,先做 set names latin1 ,然后在更新语句或者执行SQL语句

mysql> set names latin1;

mysql> source test.sql;

方法二:在SQL文件中指定set names latin1;然后登录MySQL,执行相应文件

[root@localhost ~]# cat test.sql

set names latin1;

insert *****************;

mysql> source test.sql;

方法三:

在SQL文件中指定set names latin1;然后通过MySQL命令导入

[root@localhost ~]# mysql -uroot -p123456 test

方法四:通过指定MySQL命令的字符集参数实现--default-character-set=latin1

[root@localhost ~]# cat test.sql

insert *****************;

[root@localhost ~]# mysql -uroot -p123456 --default-character-set=latin1 test

方法五:推荐此方法,但是建议使用utf8

在配置文件里设置客户端以及服务器端相关参数

即修改my.cnf 客户端的模块参数,可以实现set names utf8,且永久生效

[client]

default-character-set=utf8

无需重启MySQL,退出当前登录,重新登录即可

[server]

default-character-set=utf8 5.1以前的版本

character-set-server=utf8 5.5版本

库表,程序!

CREATE DATABASE wyb  DEFAULT CHARACTER SET utf8 collate utf8_general_cli;

字符集含义总结表

mysql> show variables like 'character_set%';

| character_set_client | utf8 #客户端字符集

| character_set_connection | utf8 #链接字符集

| character_set_database | utf8 #数据库字符集,配置文件指定或者创建时指定

| character_set_results | utf8 #返回结果字符集

| character_set_server | utf8 #服务器字符集,配置文件,或者创建库,表时候指定

本文出自 “crazy_sir” 博客

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值