Sqlite 在支持Oracle的内存中;schema.package.function(输入、输出)";

Sqlite 在支持Oracle的内存中;schema.package.function(输入、输出)";,sqlite,h2,derby,hsqldb,in-memory-database,Sqlite,H2,Derby,Hsqldb,In Memory Database,我必须为使用SpringBoot和Oracle创建的RESTAPI编写JUnit测试用例。没有专用的测试数据库环境。所以我计划使用内存数据库。我在H2数据库上做了一个POC。即使花了3天时间,我也能做一些基本的事情,但它与Oracle并不完全兼容。它不支持In,Out参数,也不支持“调用schema.package.function(In,Out)”。我能够创建模式和函数,但无法创建包。你能推荐一个支持以下内容的内存吗 应支持架构、包和函数创建 应支持输入、输出参数 应该是轻量级的 应与Orac

我必须为使用SpringBoot和Oracle创建的RESTAPI编写JUnit测试用例。没有专用的测试数据库环境。所以我计划使用内存数据库。我在H2数据库上做了一个POC。即使花了3天时间,我也能做一些基本的事情,但它与Oracle并不完全兼容。它不支持In,Out参数,也不支持“调用schema.package.function(In,Out)”。我能够创建模式和函数,但无法创建包。你能推荐一个支持以下内容的内存吗

  • 应支持架构、包和函数创建
  • 应支持输入、输出参数
  • 应该是轻量级的
  • 应与Oracle和Java兼容

  • HSQLDB支持过程的输入和输出参数。您可以模拟schema.package.function(in,out),方法是将数据库目录重命名为架构的名称,并创建一个名为package的单独架构,然后在该架构中创建函数


    或者,HyperXtremeSQL()支持使用Oracle语法创建包、过程和函数。

    HSQLDB支持过程的输入和输出参数。您可以模拟schema.package.function(in,out),方法是将数据库目录重命名为架构的名称,并创建一个名为package的单独架构,然后在该架构中创建函数


    或者,HyperXtremeSQL()支持使用Oracle语法创建包、过程和函数。

    您应该使用生产中使用的相同数据库进行测试。为测试目的设置Oracle db。Derby与Oracle不兼容。但是,Derby符合SQL标准。您应该使用生产中使用的相同数据库进行测试。为测试目的设置Oracle db。Derby与Oracle不兼容。然而,Derby是符合SQL标准的。从我的业务层,我称之为多个DAO层。每个都在不同的模式和不同的包中。如何处理这种情况。它适用于一个DAO层,但如何使其适用于多个DAO层。(DAO1->schema1.package1.function1,DAO2->schema2.package2.function2)。现在我正在将目录公共重命名为SCHEMA1,创建SCHEMA包。这适用于单元测试,但如何使其适用于集成测试。我们可以有多个目录吗?在HSQLDB中不能有多个包。从我的业务层,我称之为多个DAO层。每个都在不同的模式和不同的包中。如何处理这种情况。它适用于一个DAO层,但如何使其适用于多个DAO层。(DAO1->schema1.package1.function1,DAO2->schema2.package2.function2)。现在我正在将目录公共重命名为SCHEMA1,创建SCHEMA包。这适用于单元测试,但如何使其适用于集成测试。我们可以有多个目录吗?您不能在HSQLDB中执行多个包。