Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/304.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java HSQLDB中的存储过程。通过SQLTool创建_Java_Sql_Hsqldb_In Memory Database - Fatal编程技术网

Java HSQLDB中的存储过程。通过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

我正在尝试编写一个存储过程。 通过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.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
 .;