mysql数据库,表是utf-8的字符集,JDBC连接字符串指定编码为utf-8,使用:
select * from table where name<>'测试' ;
查询表时where语句没起作用,好像是中文编码的问题,而且数据库是别人的我只能读不能修改数据库的属性,想请教各位一下如何解决?谢谢!
select * from table where name<>'测试' ;
查询表时where语句没起作用,好像是中文编码的问题,而且数据库是别人的我只能读不能修改数据库的属性,想请教各位一下如何解决?谢谢!
解决方案 »
- 做项目时遇到一个小问题
- 关于strus2 iterator标签问题
- 电脑突然断电,myeclipse启动不了,An error has occurred
- Struts2配置
- 自己结合网上资料写的一个java图像灰度化程序,编译可以通过,但运行不行,请大家帮忙修改一下!谢谢!
- JSP连接数据库又出了问题,求救!!!
- 初学jsp和servlet有什么好书推荐么??????
- 各位英雄豪杰不知道的捧个人场知道就帮小弟渡过此难关.小弟在此先谢了.(在线)
- JVM到哪里找javax.servlet.*这个包?
- JFreeChart中动态画图数据不显示问题
- 面试答复时间
- java web程序员 企业信息化建设 深圳
现在一般书写一个中文过滤器就可以解决这个中文乱码问题了。
1、如果是select * from table的话字符可以在jsp中正常显示,但是如果在where语句里用到了中文字符where语句就不起作用。
2、如果where语句用英文:select * from table where name <>'test'是可以实现的。
3、在Navicat8中,我把连接属性的mysql字符集改成GB2312,可以在Navicat的console中实现,用Default(UTF-8)的就不行。
4、由于是人家的数据库我只能读不能改人家的库。
5、用like语句不行。
6、在jdbc的连接字符串中我指定了characterEncoding=UTF-8还请各位再帮忙给看看!
谢谢大家了!
把2处
default-character-set=gbk
改为default-character-set=gbk
改好了以后把以前的数据库全部删除!在重新建立过就OK了