Java 如何运行PostgreSQL;“创建序列”;(基于内存的)HSQLDB中的语法?

Java 如何运行PostgreSQL;“创建序列”;(基于内存的)HSQLDB中的语法?,java,postgresql,jdbc,hsqldb,Java,Postgresql,Jdbc,Hsqldb,我正在运行一个通过Flyway迁移的PostgreSQL数据库。初始脚本包含以下序列: CREATE SEQUENCE hibernate_sequence START WITH 1 INCREMENT BY 1000 NO MINVALUE NO MAXVALUE CACHE 1; 迁移运行良好 现在我想对我的系统运行一些测试,使用内存中的HSQLDB作为测试设置。我已经使用Postgres语法连接到此HSQLDB: dataSource.setUrl("jdbc:hsqldb:mem:my

我正在运行一个通过Flyway迁移的PostgreSQL数据库。初始脚本包含以下序列:

CREATE SEQUENCE hibernate_sequence
START WITH 1
INCREMENT BY 1000
NO MINVALUE
NO MAXVALUE
CACHE 1;
迁移运行良好

现在我想对我的系统运行一些测试,使用内存中的HSQLDB作为测试设置。我已经使用Postgres语法连接到此HSQLDB:

dataSource.setUrl("jdbc:hsqldb:mem:mydb;sql.syntax_pgs=true");
但在迁移脚本运行时,我仍然会遇到此错误:

原因:org.hsqldb.hsqldb异常:意外令牌:缓存:行:6

我怀疑这个设置是不可能的,因为没有提到
缓存
选项()。这是真的吗?有没有什么解决办法,可能是使用其他语法或其他什么


非常感谢

只需删除
缓存
部分。无法执行此操作,因为这将使迁移脚本无效。此外,它也不能解决如何运行有效的PostgreSQL的问题……唯一可以运行有效的Postgres查询的DBMS是Postgres。从一个DBMS迁移到另一个DBMS意味着您需要从查询中删除“新”DBMS不提供的功能。因此,您唯一的选择是从语句中删除缓存或增强HSQLDB以支持缓存参数感谢您的澄清只需删除
缓存
部分。不能这样做,因为这将使迁移脚本无效。此外,它也不能解决如何运行有效的PostgreSQL的问题……唯一可以运行有效的Postgres查询的DBMS是Postgres。从一个DBMS迁移到另一个DBMS意味着您需要从查询中删除“新”DBMS不提供的功能。因此,您唯一的选择是从语句中删除缓存,或者增强HSQLDB以支持缓存参数谢谢澄清