我用jdbc连接oracle数据库,使用preparedStatement时,如果sql语句中有中文
比如 String sql = "select * from users where name=?";
String name = "张三";
preparedStatement pst = conn.prepareStatement(sql);
pst.setString(1, name);
pst.executeQuery();
会报ORA-01460: unimplemented or unreasonable conversion requested
如果用英文就没错 //name = "zhangsan";
但是用statement时,也可以有中文
String sql = "select * from users where name=+'" + name +"'";这样也没问题 可以有中文
我的jdk是1.7的 驱动包名叫class12.jar
我在别人的机器上试没问题··他的jdk是1.6的 以前都没发现这个问题 纠结啊
比如 String sql = "select * from users where name=?";
String name = "张三";
preparedStatement pst = conn.prepareStatement(sql);
pst.setString(1, name);
pst.executeQuery();
会报ORA-01460: unimplemented or unreasonable conversion requested
如果用英文就没错 //name = "zhangsan";
但是用statement时,也可以有中文
String sql = "select * from users where name=+'" + name +"'";这样也没问题 可以有中文
我的jdk是1.7的 驱动包名叫class12.jar
我在别人的机器上试没问题··他的jdk是1.6的 以前都没发现这个问题 纠结啊
解决方案 »
- 求appfuse大神指导
- 如何访问 action
- Hibernate的JTA事务管理是不是一定要在应用程序服务器中才可以用?如果单独可以用,怎么配置配置文件?
- web service的method里,可以启动新线程吗?
- hibernate中Query与SQLQuery查询时间格式不同的问题
- STRUTS高手请进!!!!!
- KAO,.net开发真TMD无聊,什么控件都是封装好的。编程序好像搭积木,一点成就感都没有
- 关于JCreator中的classpath的问题。
- 不行了,求救!
- who can help me? EJB Client 怎么运行?
- 关于经纬度和距离查询数据库获得数据,求大神啊!!!!!
- Spring mvc tomcat运行时出现的错误,求解答
重装了oracle 字符集选UTF-8 没有这个问题了,但是还是不理解,就算我按默认安装 默认字符集是GB2312 为什么反而输中文有问题?我的Eclipse文件编码也是gbk啊··真是搞不懂
重装了oracle 字符集选UTF-8 没有这个问题了,但是还是不理解,就算我按默认安装 默认字符集是GB2312 为什么反而输中文有问题?我的Eclipse文件编码也是gbk啊··真是搞不懂这个可能要参考1#的做法,如果你的机器装了oracle客户端也许会有影响,要检查下客户端的设置。
重装了oracle 字符集选UTF-8 没有这个问题了,但是还是不理解,就算我按默认安装 默认字符集是GB2312 为什么反而输中文有问题?我的Eclipse文件编码也是gbk啊··真是搞不懂这个可能要参考1#的做法,如果你的机器装了oracle客户端也许会有影响,要检查下客户端的设置。
好吧 不管怎么样,问题解决了··分给你把