【问题标题】:Loading existing oracle database in memory JAVA在内存JAVA中加载现有的oracle数据库
【发布时间】:2017-04-21 12:11:10
【问题描述】:

我试图弄清楚如何在单元测试中将现有的 oracle 数据库加载到内存中。有没有办法做到这一点?我阅读了有关 Apache Derby 的信息,但遗憾的是找不到有关如何使用导出文件将现有数据库加载到内存中的答案。有任何想法吗?谢谢你的回答。

我为什么需要它?不要用损坏/虚构的结果填充数据库。

【问题讨论】:

  • Oracle 提供Database In-Memory option 和 12c。
  • 你的单元测试试图测试什么?您可能以错误的方式处理此问题。您还可以设置一个可供单元测试访问的常规测试数据库,尽管这听起来更像是 集成 测试而不是单元测试所需要的。
  • 请大家不要分析需求。我只是想找到一种从现有数据库创建临时/内存数据库以进行单元测试的方法。检查家伙更新的答案。
  • 明确一点:您所说的是将 Oracle 数据结构从导出文件加载到 RAM 中,而不是用数据库的完整内容填充 DB 缓冲区缓存。
  • 它应该是可选的,但两个工具都应该可用。因为我想[用现有记录/新记录甚至空表进行测试]

标签: java oracle derby


【解决方案1】:

要将数据从 CSV 文件加载到 Derby 数据库,请尝试 SYSCS_UTIL.SYSCS_IMPORT_TABLE 系统过程:https://db.apache.org/derby/docs/10.13/ref/rrefimportproc.html

要控制 Derby 数据库是仅存在于内存中还是保留在磁盘上,您可以在 JDBC 连接 URL 中指定 jdbc:derby:memory:https://db.apache.org/derby/docs/10.13/devguide/cdevdvlpinmemdb.html

【讨论】:

    猜你喜欢
    • 2019-08-11
    • 1970-01-01
    • 1970-01-01
    • 2013-01-28
    • 1970-01-01
    • 2012-10-30
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多