Java HSQLDB中的存储过程。通过SQLTool创建
我正在尝试编写一个存储过程。 通过SQL浏览器创建它很顺利,但是当我将它保存在SQL文件中并通过SQLTool加载它时,它失败了Java HSQLDB中的存储过程。通过SQLTool创建,java,sql,hsqldb,in-memory-database,Java,Sql,Hsqldb,In Memory Database,我正在尝试编写一个存储过程。 通过SQL浏览器创建它很顺利,但是当我将它保存在SQL文件中并通过SQLTool加载它时,它失败了 我收到以下错误 Exception in thread "main" java.lang.Error: Error: could not match input at org.hsqldb.cmdline.sqltool.SqlFileScanner.zzScanError(Unknown Source) at org.hsqldb.cmdline
我收到以下错误
Exception in thread "main" java.lang.Error: Error: could not match input
at org.hsqldb.cmdline.sqltool.SqlFileScanner.zzScanError(Unknown Source)
at org.hsqldb.cmdline.sqltool.SqlFileScanner.yylex(Unknown Source)
打电话
objectMain(sqlToolParams)
在哪里
我需要帮助纠正语法
我试图从他那里得到线索
但似乎我的理解还不够充分
添加的问题--SQL文件是否需要对存储的进程进行任何特定的编码更新 存储过程的正确定义如下所示
经过一些挖掘和发现,Select语句必须被更正。 SQLTool不接受直接选择 在编写存储的进程和函数之前,请先完成以下步骤
Exception in thread "main" java.lang.Error: Error: could not match input
at org.hsqldb.cmdline.sqltool.SqlFileScanner.zzScanError(Unknown Source)
at org.hsqldb.cmdline.sqltool.SqlFileScanner.yylex(Unknown Source)
String [] sqlToolParams = {"--inlineRc", "URL="+"jdbc:hsqldb:mem:TestDB", SCHEMAPATH};
CREATE PROCEDURE SP_GETNEXTSEQUENCE(OUT pno_new_id INTEGER, IN pni_seq_id INTEGER)
MODIFIES SQL DATA
BEGIN ATOMIC
UPDATE SEQUENCE_GENERATOR SET seq_value=seq_value+1 where seq_id=pni_seq_id;
SET pno_new_id = (select seq_value from SEQUENCE_GENERATOR where seq_id=pni_seq_id);
END
.;