我有一个内存 HSQL 数据库 (v 1.8) 正在运行 - 我可以使用 Java 连接到它并运行“ CREATE TABLE ”查询。
我正在尝试创建和运行存储过程,并且从 HSQL 文档中创建一个别名并让它指向一个 Java 类。然后让 Java 类执行存储过程将执行的必要处理。
我使用类似以下语句在 HSQL 中创建了一个别名 -
CREATE ALIAS MySPROC FOR "com.mypackage.MyClass.myFunction";
然后我尝试使用如下 Java 代码运行此 SPROC -
java.sql.CallableStatement stmt = cnt.prepareCall(storedProcedureCall);
其中 cnt 是 java.sql.Connection 类型。
我收到如下错误 -
java.lang.RuntimeException: java.sql.SQLException: Function not found com.mypackage.MyClass java.lang.ClassNotFoundException: com.mypackage.MyClass in statement [ CALL MySPROC(?,?,?) ]
at org.hsqldb.jdbc.Util.throwError(Unknown Source)
at org.hsqldb.jdbc.jdbcPreparedStatement.<init>(Unknown Source)
at org.hsqldb.jdbc.jdbcCallableStatement.<init>(Unknown Source)
at org.hsqldb.jdbc.jdbcConnection.prepareCall(Unknown Source)
etc.
我的理解是我必须向 HSQL 显示“ com.mypackage.MyClass ”的位置。
我怎么做?