|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
- import java.sql.*;
- public class TestProc {
- public static void main(String[] args) throws Exception {
- Class.forName("oracle.jdbc.driver.OracleDriver");
- Connection conn = DriverManager.getConnection("jdbc:oracle:thin:@127.0.0.1:1521:ORCL", "scott", "tiger");
-
- CallableStatement cstmt = conn.prepareCall(" {call p(?, ?, ?, ?)} ");
-
- cstmt.registerOutParameter(3, Types.INTEGER);
- cstmt.registerOutParameter(4, Types.INTEGER);
-
- cstmt.setInt(1, 3);
- cstmt.setInt(2, 4);
- cstmt.setInt(4, 5);
-
- cstmt.execute();
-
- System.out.println(cstmt.getInt(3));
- System.out.println(cstmt.getInt(4));
-
- cstmt.close();
- conn.close();
-
-
-
- }
- }
复制代码
运行时出现的问题
- Exception in thread "main" java.lang.NullPointerException
- at oracle.jdbc.ttc7.TTCAdapter.newTTCType(TTCAdapter.java:270)
- at oracle.jdbc.ttc7.TTCAdapter.createNonPlsqlTTCColumnArray(TTCAdapter.java:256)
- at oracle.jdbc.ttc7.TTCAdapter.createNonPlsqlTTCDataSet(TTCAdapter.java:231)
- at oracle.jdbc.ttc7.TTC7Protocol.doOall7(TTC7Protocol.java:1435)
- at oracle.jdbc.ttc7.TTC7Protocol.parseExecuteFetch(TTC7Protocol.java:888)
- at oracle.jdbc.driver.OracleStatement.executeNonQuery(OracleStatement.java:2076)
- at oracle.jdbc.driver.OracleStatement.doExecuteOther(OracleStatement.java:1986)
- at oracle.jdbc.driver.OracleStatement.doExecuteWithTimeout(OracleStatement.java:2697)
- at oracle.jdbc.driver.OraclePreparedStatement.executeUpdate(OraclePreparedStatement.java:457)
- at oracle.jdbc.driver.OraclePreparedStatement.execute(OraclePreparedStatement.java:531)
- at TestProc.main(TestProc.java:20)
复制代码
请问是怎么回事?
|
|