Topic: JDBC thin驱动的怪事 |
Print this page |
1.JDBC thin驱动的怪事 | Copy to clipboard |
Posted by: flueboy Posted on: 2004-10-13 08:56 源码如下: import java.sql.*; public class QueryDBthin { public static void main(String[] args) { try { Class.forName("oracle.jdbc.driver.OracleDriver"); //加载驱动程序 Connection con=DriverManager.getConnection("jdbc:oracle:thin:@sendig-server:1521:mcmserv","mcm","mcm"); //建立连接 //执行SQL语句 Statement stmt=con.createStatement(); ResultSet rs = stmt.executeQuery ("select userid from userid"); //返回查询结果 while (rs.next()) { //System.out.println(rs.getString("id")+ " " +rs.getString("userid")); System.out.println(rs.getString(1)); } rs.close(); stmt.close(); con.close(); }catch(Exception e){e.printStackTrace();} } } 有一个怪事,asset_number是number类型时程序没有任何问题,可是为什么当我把字段asset_number换成其他varchar2类型的字段时SQL语句执行不过呢? 如果我改用JDBC-ODBC桥时就没有这些问题。 当查询语句换成“select * from cux_eam_asset_v”时也出现同样的错误, 提示如下的错误信息: java.sql.SQLException: ORA-00600: 内部错误代码,参数: [ttcgcshnd-1], [0], [], [] , [], [], [], [] at oracle.jdbc.dbaccess.DBError.throwSqlException(DBError.java:114) at oracle.jdbc.ttc7.TTIoer.processError(TTIoer.java:208) at oracle.jdbc.ttc7.Oall7.receive(Oall7.java:542) at oracle.jdbc.ttc7.TTC7Protocol.doOall7(TTC7Protocol.java:1311) at oracle.jdbc.ttc7.TTC7Protocol.fetch(TTC7Protocol.java:797) at oracle.jdbc.driver.OracleStatement.doExecuteQuery(OracleStatement.java:1608) at oracle.jdbc.driver.OracleStatement.doExecute(OracleStatement.java:175 at oracle.jdbc.driver.OracleStatement.doExecuteWithTimeout(OracleStatement.java:1805) at oracle.jdbc.driver.OracleStatement.executeQuery(OracleStatement.java:410) at QueryDBthin.main(QueryDBthin.java:15) |
2.Re:JDBC thin驱动的怪事 [Re: flueboy] | Copy to clipboard |
Posted by: scud Posted on: 2004-10-13 11:44 如果用oracle 8i,就用8i目录下的jdbc驱动 9i用9i的 jdk也要对应 试试吧,只是可能 |
3.Re:JDBC thin驱动的怪事 [Re: flueboy] | Copy to clipboard |
Posted by: bill1 Posted on: 2004-10-19 16:36 是的,JDBC驱动不对,你可能用低版本的8i驱动连oracle 9i了, 可加在classpath=....classes12.jar;... 这个驱动放在classpath的最前面. |
4.Re:JDBC thin驱动的怪事 [Re: flueboy] | Copy to clipboard |
Posted by: flueboy Posted on: 2004-10-22 10:38 谢谢各位,我的驱动版本不对。 |
5.Re:JDBC thin驱动的怪事 [Re: flueboy] | Copy to clipboard |
Posted by: cgd_60802 Posted on: 2004-11-19 09:59 我也出现了同样的问题,我用的是Eclipse,jdk1.4.2 起初在classpath重视这样设置的,C:\j2sdk1.4.2\lib;classes12.jar文件就在这个文件家的下面,可是出现同主楼一样的问题,后来我又再classpath的最前面单独的增加了一个C:\j2sdk1.4.2\lib\classes12.jar;可问题依旧。 不知该怎么办了:( |
6.Re:JDBC thin驱动的怪事 [Re: flueboy] | Copy to clipboard |
Posted by: redbugler Posted on: 2004-12-09 12:48 把classes12.jar复制到.../jre/lib/ext下面,就不用设定classpath了,程序会自动找到。注意,这个目录要和你使用的vm的一致。最新驱动可以到Oracle的网站上去找。Eclipse默认用的是JRE而不是JDK里的。 |
Powered by Jute Powerful Forum® Version Jute 1.5.6 Ent Copyright © 2002-2021 Cjsdn Team. All Righits Reserved. 闽ICP备05005120号-1 客服电话 18559299278 客服信箱 714923@qq.com 客服QQ 714923 |