`
dazhi2010
  • 浏览: 106338 次
  • 性别: Icon_minigender_1
  • 来自: 济南
社区版块
存档分类
最新评论

数据库中文乱码问题

阅读更多

中文乱码问题:

1)原因:数据库的编码与读取时的编码不一致;jsp页面的显示保存编码与读取到的编码不一致;数据库的编码不统一,尤其是数据库的server

2)解决方法:

<1>连接mysql数据库的驱动url改为:jdbc:mysql://localhost:3306/lj?useUnicode=true&amp;characterEncoding=utf-8

<2>mysql数据库编码设为同一的utf-8:

set names 'utf8';

set character_set_filesystem='utf8';

show variables like 'character_set_%';

<3>jsp文件的编码设为utf-8:

<%@page pageEncoding="utf-8"%>

<4>html文件内容的编码设为utf-8:

<meta http-equiv=Content-Type content="text/html; charset=utf-8" />

<5>所有的文件保存时使用utf-8编码格式保存

产生乱码的原理及解决办法:

1)产生乱码是由于在某个环节的两端编码方式不一致或者终端(浏览器等)

不支持;另外也可能是tomcat服务器不稳定的问题,如果是tomcat服务器产生的原因,则需要到tomcat服务器安装目录的bin文件夹下修改配置

2)解决办法:

@ 从页面接受的数据使用编码进行重新编译,(要注意gbk与utf8把中文当作几个字节来看),如接受到数据后,在取出数据之前,需设置编码request.setCharacterEncoding(“utf-8”),在得到输出流out之前也要设置response.setCharacterEncoding(“utf-8”)

@ 向数据库中存储数据之前,先确保数据都使用了同一的编码(至少在插入数据的时候),表、源文件都设置一下,全部使用同一的编码如utf-8,以mysql为例:[create database xxx CHARACTER SET charset_name

][set names 'utf-8'],然后查看是否所有的字符集都是同一种,不是则单独设置(方法见上文)。建表也许设置编码CREATE TABLE xxx (

) ENGINE=InnoDB AUTO_INCREMENT=198 DEFAULT CHARSET=utf8 ROW_FORMAT=REDUNDANT; 接下来执行sql脚本就行了。

@ 从数据库中取出数据后也要重新编码

latin1 

binary

分享到:
评论

相关推荐

    oracle数据库中文乱码问题解决方案.docx

    Oracle数据库中文乱码问题解决方案 Oracle数据库中文乱码问题是指在Oracle数据库中,中文字符无法正确显示或出现乱码的问题。这种问题通常是由于数据库服务器端和客户端字符编码设置不正确引起的。本文将提供一个...

    MYSQL数据库中文乱码问题.docx

    MYSQL数据库中文乱码问题解决方案 MYSQL数据库中文乱码问题是许多开发者和数据库管理员经常遇到的问题,尤其是在导入和导出数据时。下面总结了一些常见的解决方案和技巧,以供参考。 方法一:使用正确的命令 在...

    hibernate数据库中文乱码问题

    ### Hibernate数据库中文乱码问题详解 #### 背景与问题描述 在使用Hibernate框架进行数据库操作时,可能会遇到中文乱码的问题。特别是在使用MySQL作为数据库,并且已将数据库编码设置为`utf-8`的情况下,依然出现...

    如何解决MYSQL数据库中文乱码问题-.docx

    解决MYSQL数据库中文乱码问题 在实际的开发和应用中,MYSQL数据库中文乱码问题是一个常见的问题,这个问题的出现往往是由于数据库字符集的不正确设置所引起的。解决MYSQL数据库中文乱码问题需要从多方面入手,包括...

    OpenStack数据库中文乱码问题.docx

    在OpenStack环境中,数据库中文乱码问题是一个常见的挑战,特别是在处理中文数据的存储和查询时。这个问题主要出现在数据库编码设置不正确或者与OpenStack服务之间的交互过程中编码转换不当的情况。以下是一些关于...

    ORACLE数据库中文显示乱码问题的解决

    ORACLE数据库中文显示乱码问题的解决,系统中ORACLE数据库在安装后不能正确显示中文,而是显示为'???'等此类乱码。他人总结分析的内容,可以参考下。

    SqlServer数据库中文乱码问题解决方法

    在SQL Server数据库中遇到中文乱码问题,通常是由于安装时默认的排序规则不适用于中文环境导致的。默认情况下,SQL Server可能使用拉丁文排序规则,这在处理中文字符时会出现问题。解决这个问题需要理解SQL Server的...

    解决JSP到MySQL数据库中文乱码问题

    遇到了这个问题, 按照一定的顺序解决了, 来这里总结一下, 希望能帮助大家.  咱们从前台到后台的顺序来解决.  1. JSP  这里需要设置一下JSP页面的统一编码格式:  打开Eclipse-window-&gt;preferences. 根据...

    mysql数据库中文乱码问题共2页.pdf.zip

    MySQL数据库在处理中文字符时可能会遇到乱码问题,这通常是由于字符编码设置不正确或不一致导致的。本文将深入探讨MySQL中文乱码问题的原因、表现以及解决方案。 首先,我们需要理解字符编码的基础知识。字符编码是...

    MySQL数据库系统中文乱码问题及解决方案.pdf

    MySQL数据库系统中文乱码问题及解决方案 MySQL数据库系统中文乱码问题是指在使用MySQL数据库系统时,中文字符在存储、传输和显示过程中出现乱码的问题。这种问题的出现是由于字符集和编码方式的不兼容所致。 在...

    vs自带数据库sql server的中文插入乱码问题、查找当前数据库名

    解决两个问题:vs自带数据库sql server的中文插入乱码问题、查找当前数据库名 (查找数据库名在文章中间,自己往下翻吧,不单拎出来了) vs自带数据库sql server的中文插入乱码问题: 如图所示,我插入表的中文变成...

    Jdbc连接oracle远程数据库中文乱码解决

    Oracle数据库作为一款广泛应用的关系型数据库系统,其与Java应用程序的集成常常会遇到各种问题,其中之一就是字符编码导致的中文乱码问题。本文将深入探讨如何通过JDBC(Java Database Connectivity)连接Oracle远程...

    解决数据库存取乱码问题

    在IT领域,数据库存取乱码问题是一个常见的挑战,尤其对于多语言支持或者涉及中文字符的应用来说。这个问题可能出现在多种场景下,如数据输入、查询显示或者导出时。为了解决这一问题,我们需要深入理解字符编码原理...

    Qt5读取access数据库中文乱码

    Qt5读取access数据库中文乱码 问题地址:http://bbs.csdn.net/topics/390992221

    PB9写入非中文数据库的乱码问题

    通过以上步骤,我们可以确保中文字符以正确的Unicode编码存储在数据库中,即使第三方软件查看也不会出现乱码问题。这个方法特别适用于那些不完全支持Unicode的数据库系统,例如早期版本的SQL Server或其他西文数据库...

    asp access 数据库乱码问题

    标题“asp access 数据库乱码问题”提示我们,问题出在使用ASP与Access数据库交互时,中文数据出现了乱码。这可能是由于以下原因: 1. **字符集不兼容**:Access数据库可能使用了不同的字符集(如UTF-8或GBK),而...

    MySql数据库导入乱码

    此外,我们还需要在数据库连接文件中指定字符集,以避免乱码问题。我们可以在数据库连接文件中加一句 set names ’gbk’ ;以指定字符集为 gbk。在网页显示时,也不会出现中文乱码。 解决 MySql 数据库导入中文乱码...

Global site tag (gtag.js) - Google Analytics