从页面插入的是中文,到了mysql中显示的是乱码,再从数据库中读出来的时候是中文的。不知道是什么原因.创建数据库是用gbk编码的,过滤器是gbk编码,mysql是5.1的,JDBC驱动是5.0的
解决方案 »
- javascript window open在ie中设置不起作用,求解决?
- 求教 关于 jdom生成xml问题
- 小弟刚学JAVA,写了个HelloWorld的JSP界面,在myEclipse下运行,结果出错,大家帮忙看看
- jsp中怎么判断一个字符串是另一个的子串
- [求助]为什么出现异常????
- 怎样部署 jive Forums Pro 4.0.3?
- 求Servlet的乱码解决办法!
- 有没有办法测试网站可以支持多少人同时在线的?
- 紧急求助,请达人帮忙看看~~~~~
- 我的记录集怎么不能返回?
- 求一个小算法
- 如何把select sum(字段) as XXX from table中返回的XXX显示在页面?
用mysqldump把数据dump下来,然后用记事本打开,看看会不会乱码数据经过很多环节的处理
解决问题的关键是定位发生乱码的环节
ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that
corresponds to your MySQL server version for the right syntax to use near 'mysql
dump --help' at line 1
url="jdbc:mysql://***:3306/yourdbaname?autoReconnect=true&useUnicode=true&characterEncoding=utf-8&
mysqlEncoding=utf8" maxActive="20"/>
肯定就没问题了
maginn(maginn) :设置连接的编码集没有用啊,JDBC驱动是5.0的可以自动识别数据库的字符编码。
greatzheng(达不溜西) :是的没有选择,我是选的latin1默认的,但创建数据库的时候可以指定啊
----这个我是过不行啊。数据库中的还是乱码。
还要在安装数据库的时候把默认的latin设为gbk
建表的时候也要把每一列设为gbk
mysql文档里面说了,表的编码默认按照数据库的编码,列的编码默认按照表的编码lhx1982425() :要是该my.ini的话是可以的我试过,不过要改两个地方,
[client]port=3306[mysql]default-character-set=latin1---这是一个[mysqld]# The TCP/IP Port the MySQL Server will listen on
port=3306
#Path to installation directory. All paths are usually resolved relative to this.
basedir="F:/MySQL/MySQL Server 5.1/"#Path to the database root
datadir="F:/MySQL/MySQL Server 5.1/Data/"# The default character set that will be used when a new schema or table is
# created and no character set is defined
default-character-set=latin1---这是另一个
重启mysql服务器再建数据库就可以了。url的编码都不需要。
能不能不改my.ini?