Ric*_*ols 3 java oracle stored-procedures jdbc
我正在尝试通过JDBC将一些Java存储过程加载到Oracle 10g数据库中.我正在执行的声明是 -
CREATE OR REPLACE JAVA SOURCE NAMED "test.Test" AS
package test;
public class Test {
public static String myMethod(String a) {
return a;
}
};
Run Code Online (Sandbox Code Playgroud)
通过TOAD运行这个工作正常,但是当通过我的JDBC客户端运行时出现以下错误 -
Exception in thread "Thread-3" java.lang.NullPointerException
at oracle.jdbc.driver.T4C8Oall.getNumRows(T4C8Oall.java:728)
at oracle.jdbc.driver.T4CStatement.execute_for_rows(T4CStatement.java:478)
at oracle.jdbc.driver.OracleStatement.doExecuteWithTimeout(OracleStatement.java:1028)
at oracle.jdbc.driver.OracleStatement.executeUpdate(OracleStatement.java:1451)
at ejsdal.CreateDBJavaSQL.executeScript(CreateDBJavaSQL.java:23)
at ejsdal.OperationController.run(OperationController.java:182)
Run Code Online (Sandbox Code Playgroud)
我正在使用java.sql.Statement的"executeUpdate"在第一个代码块中传递字符串.
可以通过JDBC加载java源码吗?
想出来 - 需要设置
statement.setEscapeProcessing(false);
Run Code Online (Sandbox Code Playgroud)
在执行更新之前.这是因为JDBC驱动程序将Java源文件的{和}字符误解为过程调用语法.
| 归档时间: |
|
| 查看次数: |
4787 次 |
| 最近记录: |