`
何足道
  • 浏览: 33178 次
  • 性别: Icon_minigender_1
  • 来自: 南京
社区版块
存档分类
最新评论

使用DdlUtils和Ant进行不同数据库之间schema和data的转换

阅读更多

声明:使用DdlUtils需要基本的ant知识。

 

在开发过程中常常要用到多种数据库类型,比如项目可能需要支持Oracle, MySQL, MSSQL Server, Derby等等。已经有很多各种各样的小工具可以帮助开发人员进行数据库之间的schema、data转换与同步,DdlUtils就是其中之一。它可以结合Ant或者程序代码进行数据库schema/data和xml文件的相互转换。

例如,项目开发支持的是MySQL,而为了单元测试的整洁和方便,开发人员决定使用Derby来支持单元测试。DdlUtils就可以把schema和数据从MySQL中导出,变成xml文件,然后根据需要导入到Derby中;反之亦可。显然,这些导出的xml文件也是对于数据库的一个很好的备份。

下面是apache ddlutils官网给出的一个xml的例子,table和column标签里面支持的child和attribute远不止示例中的这些。

 

 

DdlUtils包含了3个Ant Task,分别是databaseToDdl, ddlToDatabase以及dumpMetadata。

 

使用ddlToDatabase的示例:

这个Ant任务创建了一个PostgreSQL数据库,把xml中定义的schema和data导入到数据库中。

 

使用databaseToDdl的示例:

这个Ant任务把derby数据库中的schema和data导出到xml文件中。


 

 

 

 

分享到:
评论

相关推荐

    数据库的catalog与schema

    同时,许多数据库管理工具,如MySQL Workbench、pgAdmin(针对PostgreSQL)、Oracle SQL Developer等,都提供了直观的界面来查看和操作Catalog和Schema,使得数据库管理员和开发人员能够更加便捷地进行数据库设计和...

    树形结构的数据库表Schema设计1

    总的来说,设计树形结构的数据库表Schema是一项挑战,需要平衡直观性、存储效率和查询性能。根据实际场景和需求,可以选择直观的`{Node_id, Parent_id}`方案,或者优化后的基于左右值编码的方法。理解并掌握这两种...

    米软异构数据库转换

    "米软异构数据库转换"是一款专业的数据库管理工具,它具备强大的数据迁移功能,能够方便地在多种数据库系统之间进行数据转换。这款工具支持的数据库类型包括SQLite、MySQL、SQL Server、Access以及SQL Server CE和...

    json转换jsonschema

    在实际应用中,开发者可以使用这样的工具或库,通过简单的API调用来实现JSON到JSON Schema的转换,从而提高数据处理的可靠性和安全性。例如,如果你正在开发一个Web应用,你可以先将用户提交的JSON数据转换为JSON ...

    数据库 schema含义 .doc

    不同的 schema 之间它们没有直接的关系,不同的 schema 之间的表可以同名,也可以互相引用(但必须有权限),在没有操作别的 schema 的操作根权下,每个用户只能操作它自己的 schema 下的所有的表。不同的 schema 下...

    oracle数据库体系结构之一【user和schema】

    Oracle数据库中,用户(User)和模式(Schema)是两个紧密相关却又鲜明不同的概念。用户是指拥有数据库权限和资源的实体,而模式则是指一组数据库对象的集合,包括表、视图、索引、同义词等等。 首先,从官方文档中...

    XML与数据库相互转换

    - "Convertxml":可能是实现XML与数据库转换的代码文件,可能使用了.NET中的XML和数据库相关类库。 总结来说,"XML与数据库相互转换"是一个关键的IT技能,涉及数据的读取、解析、操作和存储。在VS2003中,开发者...

    使用ant执行sql脚本重建oracle数据库

    在进行这样的转换时,我们需要了解两种数据库之间的差异,例如MySQL的InnoDB引擎与Oracle的表空间,以及它们对索引、触发器、存储过程的支持情况。 在实际操作中,我们可能会编写一系列的SQL脚本,先将MySQL的数据...

    SQL DataBase schema & data Compare

    1. **比较不同数据库的结构**:这些工具能快速识别出表、视图、索引、存储过程和函数之间的差异。 2. **生成差异报告**:生成详细的报告,列出所有不匹配的元素,便于理解并解决差异。 3. **同步更改**:允许用户...

    sql数据库之间数据的转录

    此外,还可以使用ETL(Extract, Transform, Load)工具,如SSIS(SQL Server Integration Services)、Apache Nifi或Pentaho Data Integration,它们提供了更强大的数据处理和转换功能。 在数据导入过程中,需要...

    DB2导出数据库表结构和数据.pdf

    使用以下命令,我们可以创建一个新的数据库和 schema: create database db_name on 'directory_name' using codeset utf-8 territory US collate using system; create schema sch_name authorization sch_passwd...

    使用information_schema.tables查询数据库和数据表信息1

    `information_schema`是一个特殊的系统数据库,它提供了一种方便的方式来获取关于所有数据库、表、列、存储引擎和其他元数据的信息。在这个主题中,我们将深入探讨如何利用`information_schema.tables`来查询数据库...

    用streams实现不同数据库下不同schema间DDL同步 上个礼拜有同事问我 ....doc

    用streams实现不同数据库下不同schema间DDL同步 上个礼拜有同事问我 ...

    xml与Access数据库的转换案例

    将XML与Access数据库进行转换,可以实现数据在不同系统间的交换,或者在不支持直接访问Access数据库的环境中使用XML作为中间数据格式。 XML的优点在于其结构化和可扩展性,它允许自定义标签来表示数据,方便数据的...

    数据库之间数据的复制

    注意源数据库和目标数据库的数据类型可能不同,BCP可能会在导入/导出过程中遇到问题。需要确保数据类型兼容,或者在导入前对数据进行转换。 6. **事务处理** 对于大规模数据操作,可以考虑在BCP操作中使用 ...

    xml与数据库间转换

    XML(eXtensible Markup ...XML与数据库的转换是一个广泛的主题,涵盖了许多技术和细节,包括XPath和XSLT用于查询和转换XML,以及不同的数据库API用于与数据库交互。掌握这些技能对于处理和传输结构化数据至关重要。

    mysql 性能调优与架构设计 数据库Schema源码

    `ugms2.sql`和`ugms.sql`这两个文件很可能包含了用于演示或实践的数据库Schema脚本。它们可能是创建数据库、表以及相关对象的SQL语句集合,通过运行这些脚本,我们可以重现一个特定的数据库结构,进而分析其性能优化...

    schema相关知识压缩包

    XML Schema是一种XML文档的验证工具,它使用XML语法来定义XML文档的结构和数据类型。XML Schema替代了DTD(Document Type Definition),提供了更强大的数据验证功能,如命名空间支持、数据类型扩展和复杂数据类型...

    Schema_Workbench

    - **数据源连接**:Schema_Workbench支持多种数据库系统,如MySQL、Oracle、SQL Server等,允许用户与不同的数据源进行交互。 - **元数据管理**:该工具提供了一种可视化的方式来管理和维护数据仓库的元数据,包括...

    antd-schema-form:Based on Ant Design, interactive forms can be generated through JSON Schema configuration. - 基于Ant Design,可以通过JSON Schema配置生成可交互的表单

    蚂蚁模式基于Antd-schema-form的 ,可以使用配置快速生成交互式表单。 此[Demo]( )仅显示了如何通过配置schema.json来构造表单。开始使用使用之前,需要在babel配置antd。 您需要按以下方式配置babel-loader: { ...

Global site tag (gtag.js) - Google Analytics