【问题标题】:Converting Oracle or Sql Server DDL to Derby将 Oracle 或 Sql Server DDL 转换为 Derby
【发布时间】:2012-01-31 16:50:51
【问题描述】:

我们有 SQL Server/Oracle DDL,但我想将 Derby 用于开发/自动化测试目的。我想要一个可以从源代码管理同步到并运行的测试环境 - 没有数据库安装 BS。

有人知道将 SQL Server 或 Oracle DDL 转换为 Apache Derby 的好方法吗?

【问题讨论】:

  • 你知道这没有多大意义。每个数据库系统的 DDL 都不同。在与生产环境不同的数据库系统上进行测试几乎是白费力气。
  • 这很有意义。在通过针对 Derby 的初始测试后,我们仍将在生产数据库上进行测试。我们有与 DB 无关的代码,只是 DDL 不同(有一些例外)。 SQL Server/Oracle 设置繁琐且耗时,并且很难编写脚本。 Derby 只是一个 jar 文件。
  • 每个数据库的锁定和性能行为将非常不同。编写脚本其实并不难。

标签: java sql-server oracle derby ddl


【解决方案1】:

我不知道有一种自动化的方法可以做到这一点,但应该不会太难。如果是我的,我只需将我的 SQL Server 或 Oracle DDL 提交到测试 Derby 数据库并开始查看错误。

然后我会开始用我最喜欢的脚本语言编写一个简短的程序来处理 DDL 并将 Derby 抱怨的部分更改为 Derby 所需的语法。

【讨论】:

    【解决方案2】:

    看看Liquibase

    您可以在独立于 DBMS 的 XML 定义中定义您的表(和其他 DB 对象)。然后,Liquibase 将负责为您创建适当的 DBMS 特定 DDL。

    如果您需要针对具有相同定义源的不同 DBMS,这绝对是您应该考虑的。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2022-01-12
      • 2021-06-14
      • 2018-04-15
      • 2012-11-04
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-04-07
      相关资源
      最近更新 更多