我想通过在我的 oracle 数据库中生成 HSQLDB 中的所有表来运行单元测试。
为此,我想从 oracle 表中导出所有 DDL 创建表语句。
我尝试了导出数据库,但随着创建表 sql 我得到了很多其他 SQL,比如,
“ PARTITION BY RANGE ("CREATION_DATE") ” 等等。
如何将所有 oracle 表(模式)导出到 HSQLDB?有没有更好的方法?
您可以使用该DBMS_METADATA.GET_DDL()
函数来获取表定义,并修改SET_TRANSFORM_PARAM()选项中包含的内容,特别是在这种情况下是PARTITIONING
参数。
有很多示例供您搜索,但这里有一个示例显示了 DDL通过类似的转换进行了简化。
这是一些工作,但您可以实现自己的工具来创建 DDL。
您所需的一切都存储在 Oracle 数据库目录中。
要仅创建表(没有索引和约束),您需要以下 2 个表:
您可以在此处找到这些表的详细文档: Oracle 数据库参考
其他有用的 Oracle 表是