mysql5.0中文插入乱码问题解决

2024-04-29 03:32

本文主要是介绍mysql5.0中文插入乱码问题解决,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

从google上找了不少方法,大部分建议转码什么的,不对路。
  我的工程是flex+blazeDS+spring+ibatis,brower的request是utf8的,java也是utf8,通过blazeDS能正常取得中文。但是insert成功后,数据库查看,中文乱码。
  把ibatis xml里的insert值替换成中文,如"中文问题"。插入后照样乱码,初步确认,问题不在工程端,重点排查mysql。
  mysql的字符集是utf8的,光看这点害人不浅。登录linux,mysql -uroot -p,进入mysql。
  命令:SHOW VARIABLES LIKE 'character_set_%';
  +--------------------------+----------------------------+
| Variable_name            | Value                      |
+--------------------------+----------------------------+
| character_set_client     | latin1                     |
| character_set_connection | latin1                     |
| character_set_database   | latin1                     |
| character_set_filesystem | binary                     |
| character_set_results    | latin1                     |
| character_set_server     | latin1                     |
| character_set_system     | utf8                       |
| character_sets_dir       | /usr/share/mysql/charsets/ |
+--------------------------+----------------------------+

只有character_set_system是utf8。
vi /etc/my.cnf
mysql的默认配置文件以及目录
编辑如下:
[mysqld]
default-character-set=utf8


之后:service mysql stop
service mysql start
重启后,再次查看SHOW VARIABLES LIKE 'character_set_%';

+--------------------------+----------------------------+
| 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                       |
| character_sets_dir       | /usr/share/mysql/charsets/ |
+--------------------------+----------------------------+
此时,character_set_database已经是utf8,工程已经不再乱码。

可以再添加如下一句:


[client]

default-character-set=utf8


也可登录的时候, 要用以下命令:mysql --default-character-set=utf8 -u root -p
则:
+--------------------------+----------------------------+
| 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                       |
| character_set_system     | utf8                       |
| character_sets_dir       | /usr/share/mysql/charsets/ |
+--------------------------+----------------------------+

到此,问题解决。

总的来说,需要保证如下几点
1.工程交互界面收集的字符串在工程server端字符集需保持一致
2.工程与数据库字符集保持一致

 

 

这篇关于mysql5.0中文插入乱码问题解决的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/945003

相关文章

solr4.3之配置中文分词IK

[size=x-large][b] 上一篇讲了使用solr4.3自带的smartcn进行中文分词,这一篇说一下,怎么使用IK进行分词, 在这之前先对中文分词的种类介绍一下,目前的中文分词主要有两种 1,基于中科院ICTCLAS的隐式马尔科夫hhmm算法的中文分词器,例如smartcn等。(不支持自定义扩展词库) 2,基于正向迭代最细粒度切分算法(正向最大匹配并且最细分词)例如IK,庖丁等(

solr4.3之配置中文分词smartcn

[b][size=x-large] solr4.3默认的分词器是一元分词器,这个本来就是对英文进行分词的,英文大部分就是典型的根据空格进行分词,而中文如果按照这个规则,那么显然是要有很多的冗余词被分出来,一些没有用的虚词,数词,都会被分出来,影响效率不说,关键是分词效果不好,所以可以利用solr的同步发行包smartcn进行中文切词,smartcn的分词准确率不错,但就是不能自己定义新的词库,不

vscode 之 output 输出中文乱码,终端输出中文正常

# 1. 背景 因为没钱买正版的软件,所以转战 vscode 编译器。 在编译 python 文件时,发现直接右键 runner code,输出中文乱码。 但是在 teiminal 终端 执行py test.py 时,输出正常,中文正常。 output 输出中文样式(中文乱码) 终端输出样式(中文正常) 2. 【失败】尝试的解决办法 修改当前 vscode 的编码样式为 : GB

Jquery导入Myeclipse10.1后报错解决思路

[b][color=green][size=large]大部分时候,把Jquery的核心包,导入Myeclipse后都会报一个验证语法不通过的错误,虽然不影响程序正常运行,但是心里,老是觉得这个项目还有问题,说到底就是追求完美嘛,在项目上显示一个红叉叉多影响心情与美观。截图如下:[/size] [/color][/b] [img]http://dl2.iteye.com/upload/at

Spring项目的几种乱码问题解决思路

[b][color=green][size=large]与Spring结合做Web项目时,常常会出现乱码情况,这时候,问题可能出现在2方面,一方面是我们本身的应用程序,另一方面就是出现在数据库,那么针对这两种可能出现的情况应该怎么避免呢? 通常做法如下: 1,在web项目中的web.xml文件里加入文件编码过滤器UTF-8: [/size][/color][/b] <!-- 处

QT中C端关闭导致S端崩溃问题

在实现多线程C/S通信时,有一个bug卡了我好久——当有一个C端关闭时,S端会崩溃。 经过一条条函数语句的筛查,终于找到问题出在哪里: 我通过类QList和迭代器来存储、访问C端链接的socket,而我在deleteSocket中delete迭代器后还想要访问到它,导致了内存的异常访问,使程序崩溃了。所以把delete *iter改成(*iter)->deleteLater(); 既可以实现原

凸优化理论学习三|凸优化问题(一)

系列文章目录 凸优化理论学习一|最优化及凸集的基本概念 凸优化理论学习二|凸函数及其相关概念 文章目录 系列文章目录一、优化问题(一)标准形式的优化问题(二)可行点和最优点(三)局部最优点(四)隐式和显式约束(五)可行性问题 二、凸优化问题(一)标准形式的凸优化问题(二)局部最优与全局最优(三)一些标准凸问题1、线性规划 (LP)2、二次规划 (QP)3、二次约束二次规划 (QCQP)4

专业矢量绘图软件Sketch for mac v100中文激活版

Sketch for Mac 是一款专业的矢量图形设计工具,主要用于 UI/UX 设计、网页设计、图标设计等领域。它的界面简洁、易用,功能强大,可以帮助设计师快速创建高质量的设计作品。 Sketch for Mac 可以轻松地创建矢量图形、图标、网页布局、移动应用程序界面等设计元素。它的功能包括:创建形状、文本、颜色、渐变、图层样式、图标和标志、矢量和位图导入、自动布局等。 Sketch for

Apache Pig和Solr问题笔记(一)

记录下最近两天散仙在工作中遇到的有关Pig0.12.0和Solr4.10.2一些问题,总共有3个,如下: (1)问题一: 如何Pig中使用ASCII和十六进制(hexadecimal)的分隔符进行加载,和切分数据? 注意关于这个问题,在Pig中,会反应到2个场景中, 第一: 在Pig加载(load)数据时候 。 第二: 在Pig处理split,或则正则截取数据的时候。 先稍微说下,

解决maven打包Mark invalid异常

[size=large]今天在用maven打包spring-boot项目时,报了如下的一个异常:[/size] [ERROR] Failed to execute goal org.apache.maven.plugins:maven-resources-plugin:2.7:resources (default-resources) on project search-zk-incre