我试图使用H2数据库。我想调用Apache Commons Library中的方法,即commons-maths3.jar。
H2.bat如下所示:
@java -cp "commons-math3.jar;h2.jar" org.h2.tools.Console %*
但是在使用以下内容访问库方法时:
CREATE ALIAS sd for "org.apache.commons.math3.stat.descriptive.moment.StandardDeviation";
我收到90086错误。
Class "org.apache.commons.math3.stat.descriptive.moment" not found; SQL statement: create alias sd for "org.apache.commons.math3.stat.descriptive.moment.StandardDeviation" [90086-193] 90086/90086
另外,请建议我如何知道H2可以访问某些库,例如DESCRIBE StandardDeviation。
这里有什么我想念的。
答案 0 :(得分:0)
方法名称必须是完全限定类和方法名称,并且可以选择包含java.lang.Integer.parseInt(java.lang.String,int)中的参数类。类和方法必须都是公共的,方法必须是静态的。该类必须在数据库引擎的类路径中可用。
(强调我的)
因此,您需要为别名指定静态方法,而不是类名。
但是StandardDeviation
没有静态方法。如果要使用它,您需要自己编写(静态)包装函数(在Java中)。