当前位置: 首页 > 知识库问答 >
问题:

嵌入式数据库和多个目录

蒙化
2023-03-14

我想为我的存储库创建集成测试。生产数据库是 Sybase,它由多个目录组成,其中有多个模式。

在我的代码中,我使用多个查询,在不同的目录中选择数据:

select * 
from catalog_a.schema_a.table_1 aa1, catalog_b.schema_a.table_2 ba2
where aa1.c1 = ba2.c2

因此,对于测试,我想创建嵌入式数据库,如H2、HSQLDB或其他不同的数据库。我试图找到一种可以让我用多个目录来模拟prod数据库的方法,但我无法实现。请提供建议并提出解决方案。

我正在用java / spring编写应用程序。这里的另一个技巧是我的应用程序只创建一个数据源到数据库。

共有2个答案

有玄天
2023-03-14

我设法通过IGNORE_CATALOGS属性和1.4.200版在H2中实现了这一点。

然而,他们文档中的url示例似乎对我不起作用,所以我在我的schema.xml中添加了一个语句:

< code >设置IGNORE _ CATALOGS = true

姬银龙
2023-03-14

HSQLDB仅支持单个目录,并且在查询中指定目录时会检查名称。您可以将目录名称从默认的PUBLIC更改为其他名称。例如:

ALTER CATALOG public RENAME TO to catalog_a

但不支持使用两个不同的目录名称。

如果两个目录中的模式或表名称不同,您可以修改HSQLDB的源代码,并在<code>org.HSQLDB.ParserDQL方法中禁用测试的目录名称检查。checkValidCatalogName(字符串名称)

 类似资料:
  • 我正在构建一个将使用neo4j的web应用程序。我将在Java构建一个REST API,它将使用Neo4j嵌入式版本。这个架构有什么问题吗? 用别的方法好吗?Neo4j服务器? 谢谢!

  • 我有一个Spring Boot和嵌入式Mongo DB的项目,我也想查找存储在那里的数据。我学习了本教程https://springframework.guru/spring-boot-with-embedd-mongoDB/

  • 问题内容: 我打算开发一个小型(Java)应用程序来管理我的财务。我相信我需要使用嵌入式数据库,但是我没有关于此问题的经验。我试图查看一些可用的产品,但是我无法确定哪种产品更适合我。H2,HSQLDB,Derby和Berkeley DB似乎是不错的候选者,但是我仍然看不到它们之间的比较。感谢您的比较,并帮助我决定使用哪个。 我打算将Hibernate用于我的应用程序(除非您建议使用DBMS提供的A

  • 问题内容: 我正在寻找可以用于使用Qt开发的应用程序的良好嵌入式数据库。这些应用程序针对来自一家大型公司的各个站点的桌面用户。该数据库应能够在每个站点分别存储数据,并且该数据应在需要时与其他站点合并。 问题答案: 除了SQLite,以下任何一项都可以与Qt一起用作嵌入式数据库。Qt已经拥有大多数驱动程序,您可以找到其他驱动程序。在“与其他站点”合并数据方面,这完全取决于您的意思。用于SQLite和

  • 我对neo4j很陌生,我想创建一个应用程序。 在远程服务器模式下,似乎只有RESTAPI可以用于连接neo4j。所以我决定使用嵌入式数据库,因为我想使用neo4j提供的JAVA API。 本教程中有一个创建连接的示例: 似乎每次我运行这段代码时,它都会创建一个新的数据库实例,所有现有的数据都会被覆盖。 但是数据需要保存,我不会在代码中将所有数据导入数据库... 如何解决这个问题?我需要的是连接到数

  • 我想更改我的嵌入式数据库的日志记录。每次我打开一个连接,atm都会记录“......创建新的JDBC驱动程序连接到......”。在我的测试套件中,我为每个请求打开一个新的连接,现在有很多这样的消息。 我没有找到任何类型的日志级别。我只是可以设置PrintWriter。但是我想看看错误msgs。我在Spring之外运行这个作为常规单元测试。 有什么想法吗?