c++写入中文到mysql乱码解决方法
mysql数据库编码与字段编码都为utf8时,写入中文不乱码的方法:
1、读取mysql时,采用与mysql 相同的编码方式,如:set character_set_results=utf8mb4,保证读入中文不乱码
2、对字符串操作时,源字符串与目标字符要保持相同的编码
3、写入mysql时,set names gbk,同时sql语句与变量都采用gbk编码
读取代码:
cMysql.SqlQuery(“set character_set_results=utf8mb4”, res, errormsg);
写入代码:
cMysql.SqlQuery(“set names gbk”, wres, werrormsg);
部分代码如下:
// 读取时
mysqlpp::StoreQueryResult res;
DBmysql cMysql = gDBWork.GetMysql();
string errormsg;
cMysql.SqlQuery("set character_set_results=utf8mb4", res, errormsg);
cMysql.SqlQuery(strSql, res, errormsg);// 写入时
new_actionLabel = UTF8ToGBK(new_actionLabel.c_str());
std::stringstream w_sql;
w_sql << "update prs_userprofile set ActionLabel ='";
w_sql << new_actionLabel.c_str();
w_sql << "' WHERE UserID = '";
w_sql << userid.c_str();
w_sql << "'";
string strWSql = w_sql.str();
mysqlpp::StoreQueryResult wres;
LLOG_INFO("write sql : %s", strWSql);
string werrormsg;
cMysql = gDBWork.GetMysql();
cMysql.SqlQuery("set names gbk", wres, werrormsg);
cMysql.SqlQuery(strWSql, wres, werrormsg);
c++写入中文到mysql乱码解决方法相关推荐
- C# .net中cookie值为中文时的乱码解决方法
C# .net中cookie值为中文时的乱码解决方法 一.cookie的名称或子cookie的名称不能为中文,否则无法获得cookie 这个好办,名称不用中文即可 二.cookie的值为中文时候,取c ...
- python listdir() 中文路径 中文文件夹 乱码 解决方法
python listdir() 中文路径 中文文件夹 乱码 解决方法 参考文章: (1)python listdir() 中文路径 中文文件夹 乱码 解决方法 (2)https://www.cnbl ...
- JabRef中添加中文文献出现乱码 解决方法
JabRef中添加中文文献出现乱码 解决方法 参考文章: (1)JabRef中添加中文文献出现乱码 解决方法 (2)https://www.cnblogs.com/tsingke/p/6516636. ...
- cmd命令行mysql乱码解决方法_mysql命令行显示乱码的解决方法
mysql命令行显示乱码的解决方法:1.打开my.ini配置文件:2.修改配置[default-character-set=utf8]:3.改变数据库的编码方式,如[set character_set ...
- c语言 读程序写入结构体,C语言文件写入结构体的乱码解决方法
C语言中用 fwrite 向文件写入结构体时出现乱码的解决方法,由于fwrite是用于二进制文件的,所以打开直接写入的文件是会出现乱码,这时需要一个中间文件来存储临时数据,就是先将数据存储在一个临时文 ...
- idea jdbc插入数据mysql 乱码解决方法
新手勿喷啊,今天做网页评论功能的时候,只要将中文评论插入数据库的时候会出现???的乱码. public class commitcomment extends HttpServlet {@Overri ...
- 从服务上下载下的日志文件,用UltraEdit打开时中文是乱码解决方法
我刚才从服务器上下载来的日志文件,后缀是.log,用UltraEdit打开时中文全是乱码,解决方法: 1.高级--->配置---->常规 里的 "自动检测到UTF-8文件&quo ...
- 【转】QT中使用MYSQL中文乱码解决方法
[转]QT中使用MYSQL中文乱码解决方法 Linux下乱码解决办法: 1.在QT程序的main.cpp的main函数中添加红色字那三句: int main(int argc, char *argv[ ...
- JSP中文及传中文参数乱码解决方法小结
在使用JSP的过程中,最使人头疼的一个问题就是中文乱码问题,以下是我在软件开发中遇到的乱码问题以及解决方法. 1.JSP页面乱码 这种乱码的原因是应为没有在页面里指定使用的字符集编码,解决方法:只要在 ...
最新文章
- Android数据存储(三)——SQLite
- Android 中的安全机制
- Linux系统时间同步:ntpdate--在内网中同步时间
- swift 简单语句 控制流语句
- 管程,进程及线程之间的区别
- JS中通过call方法实现继承
- 十六进制、RGB 与 VBA颜色值对照表
- docker配置 nacos_Nacos - 阿里开源配置中心
- 如何使用Bioconductor进行单细胞分析?
- java常用api简单统计
- 算法导论 练习10.4-5二叉树的遍历
- jacket for matlab,打印本页 - 在联想系统上使用Jacket For Matlab
- 深入浅出 CAS,很多想进阿里的倒在了这个知识点
- 20金融学431考研应该注意些什么
- 开源掌机芯片方案对比
- 【C++】将小写阿拉伯数字转换为大写汉字数字(将数字用中文的方法读出来)
- 「保姆级教学」带你闹清楚JAVA人的TOM猫是啥,再整明白Mac下怎么安装Tomcat
- DVWA--SQL Injection(SQL注入-非盲注)(全难度)
- ipa 上传卡在鉴权_上传app,一直卡在“正在通过 App Store 进行鉴定”
- 网页登陆界面,如何测试?