zoukankan      html  css  js  c++  java
  • mysql中文显示乱码问题「已解决」

    查了半天,都快绝望了,终于解决了。

    问题是程序插入的中文在数据库里显示为乱码,程序读出来仍然是中文。

    很简单。

    程序代码里面,链接数据库之后,插入数据之前,加入执行一条sql语句 SET NAMES utf8,形如:

    	db_kop.modify_db("SET NAMES utf8");
    

     然后再操作就好了。

    #include <iostream>
    #include <string>
    #include <stdio.h>
    #include "db_helper.h"
    
    using std::cout;
    using std::endl;
    
    int main(int argc, char* argv[])
    {
    	static db_helper db_kop;
    	db_kop.connect_db("127.0.0.1", "root", "cptbtptp");
    	db_kop.modify_db("SET NAMES utf8");
    
    	db_kop.modify_db("INSERT INTO `kop_fnic`.`kop_rule`(`rid`, `protocol`, `app`, `behav`, `os`, `agent`, `cat`) VALUES ('','a','0','新','浪','微','博')");
    
    	db_kop.select_db("SELECT * FROM `kop_fnic`.`kop_rule` LIMIT 0 , 30");
    	while (char** r = db_kop.fetch_row()) {
    		printf("%s %s %s %s %s %s
    ",  r[1], r[2], r[3], r[4], r[5], r[6]);
    	}
    
    
    	db_kop.modify_db("INSERT INTO `kop_fnic`.`kop_rule`(`rid`, `protocol`, `app`, `behav`, `os`, `agent`, `cat`) VALUES ('','a','1','新','浪','微','博')");
    
    	db_kop.modify_db("INSERT INTO `kop_fnic`.`kop_rule`(`rid`, `protocol`, `app`, `behav`, `os`, `agent`, `cat`) VALUES ('','a','2','新','浪','微','博')");
    //	db_kop.modify_db("SET NAMES utf8");
    	sleep(1);
    	db_kop.modify_db("INSERT INTO `kop_fnic`.`kop_rule`(`rid`, `protocol`, `app`, `behav`, `os`, `agent`, `cat`) VALUES ('','a','3','新','浪','微','博')");
    
    	db_kop.select_db("SELECT * FROM `kop_fnic`.`kop_rule` LIMIT 0 , 30");
    	while (char** r = db_kop.fetch_row()) {
    		printf("%s %s %s %s %s %s
    ",  r[1], r[2], r[3], r[4], r[5], r[6]);
    	}
    	return 0;
    }
    
  • 相关阅读:
    CISCO设备的一些硬件知识
    引用 DOS查QQ好友IP(另附入侵方法)
    【转】端口入侵常用工具分析
    修改CentOS默认yum源为国内yum镜像源
    使用Runtime类运行本地可执行文件
    英汉小词典 java随机存取文件流应用 version1.0
    8086/8088汇编过程练习 实现登录界面及其验证
    批处理伪加密
    快速启动中【显示桌面】的还原方法
    批处理字符串偏移指针
  • 原文地址:https://www.cnblogs.com/pengzheng/p/4143424.html
Copyright © 2011-2022 走看看