当前位置:  技术问答>java相关

中文!!中文!!我心中永远的痛!!(知识无价,100分算什么,能者进!!!)

    来源: 互联网  发布时间:2015-06-11

    本文导语:  我用resin.在和数据库连接查询时中文一直是问题.下面是我的代码肯请各位大虾指点 ....... Class.forName("sun.jdbc.odbc.JdbcOdbcDriver"); String url=new String(); url="jdbc:odbc:link"; Connection con=DriverManager.getConnection(url,"sa","123"); Statemen...

我用resin.在和数据库连接查询时中文一直是问题.下面是我的代码肯请各位大虾指点

.......

Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
String url=new String();
url="jdbc:odbc:link";
Connection con=DriverManager.getConnection(url,"sa","123");
Statement stmt=con.createStatement();
String sql2=new String(sql_query.getBytes("iso8859-1"),"gb2312");
ResultSet rs=stmt.executeQuery(sql2);
但在后面为检查而设定的查询语句确出现 select * from user where name='???'(即从提交查询获得的sql语句那三个问号即为输入的条件(中文))
也就是说根本不认识那几个中文 
但若改为

.......

Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
String url=new String();
url="jdbc:odbc:link";
Connection con=DriverManager.getConnection(url,"sa","123");
Statement stmt=con.createStatement();
ResultSet rs=stmt.executeQuery(sql_query);
则出现一堆的错如下:
java.sql.SQLException: [Microsoft][ODBC SQL Server Driver]郒勏?"
at sun.jdbc.odbc.JdbcOdbc.createSQLException(JdbcOdbc.java:6106)
at sun.jdbc.odbc.JdbcOdbc.standardError(JdbcOdbc.java:6263)
at sun.jdbc.odbc.JdbcOdbc.SQLGetDataString(JdbcOdbc.java:3307)
at sun.jdbc.odbc.JdbcOdbcResultSet.getDataString(JdbcOdbcResultSet.java:5494)
at sun.jdbc.odbc.JdbcOdbcResultSet.getString(JdbcOdbcResultSet.java:342)
at sun.jdbc.odbc.JdbcOdbcResultSet.getString(JdbcOdbcResultSet.java:399)
at _userquerybookresult__jsp._jspService(/userquerybookresult.jsp:112)
at com.caucho.jsp.JavaPage.service(JavaPage.java:74)
at com.caucho.jsp.Page.subservice(Page.java:485)
at com.caucho.server.http.FilterChainPage.doFilter(FilterChainPage.java:176)
at com.caucho.server.http.Invocation.service(Invocation.java:278)
at com.caucho.server.http.CacheInvocation.service(CacheInvocation.java:129)
at com.caucho.server.http.ServletServer.serviceTop(ServletServer.java:847)
at com.caucho.server.http.HttpRequest.handleRequest(HttpRequest.java:213)
at com.caucho.server.http.HttpRequest.handleConnection(HttpRequest.java:158)
at com.caucho.server.TcpConnection.run(TcpConnection.java:140)
at java.lang.Thread.run(Thread.java:536)





|
你用两种方式在ResultSet rs=stmt.executeQuery(sql2);之前用:
out.println("sql2=="+sql2) ;看看有什么不同。
对于你的第一种方式是不会有什么问题的。


|
String sql2=new String(sql_query.getBytes("iso8859-1"),"gb2312");
这句话是不是有点不对?转换字符串只转换查询字符串中的变量吧?如
"select * from table where strField="+queryVar;
如果queryVar是中文字符,只需将queryVar转换一下就可以了,不需将整个SQL语句转换。

    
 
 

您可能感兴趣的文章:

 
本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • 网站英文/中文域名字符集即网站英文/中文域名可以包含哪些字符
  • 装的linux是英文版,现在要如何显示中文字符啊,比如装中文软件,或看中文网页
  • 中文汉字编码知识及各种中文编码对应的编码区间总结
  • 求助:redhat9安装时选的英文,现在想变成中文,怎么办?打开中文网页中文也是乱码??
  • Firefox 23 中文版全新发布
  • 中文问题:我使用的是MEPIS Linux,系统不能显示中文,我能不能把Redhat中的中文字体移植到这个系统中?
  • 最新版 WordPress 3.6 “Oscar” 简体中文版介绍及下载
  • 中文问题:我的数据库中,中文写入没有问题,但中文却不能正常读出。(sqlserver2000)
  • 数据库 iis7站长之家
  • 有哪些中文linux,有哪些外挂的中文环境,这些中文环境之间兼容吗?
  • 中文网页快速去重算法研究
  • 我安装了Redhat 7.3中文版,可以输入和显示中文文件,但是在光盘上的中文文件名却不能正确显示,为什么?你们的是这样的吗?
  • Visual Studio 2012 简体中文版新功能介绍及官方下载地址
  • 在实现简体中文转繁体中文,繁体中文转简体中文时,JAVA得如何实现???
  • Java读写包括中文的txt文件时不同编码格式问题解决
  • 刚装的redhard9.0中文版, OpenOffice 不能用中文.
  • C++准标准库boost库中文介绍
  • linux要想使用中文输入法是不是要安装中文支持才可以?
  • 最新CentOS 7中文正式版64位下载、安装及CentOS网卡IP配置(ifconfig)(图文)
  • kawa 不能输入中文?对中文支持很差。
  • Windows 8.1中文英文预览版系统下载及功能改进
  • redhat 7.3 光盘中文目录名,xmms的中文歌曲名如何显示?


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3