MySQL/PostgreSQL 迁移工具。

将 MySQL 和 PostgreSQL 数据库转换为其他格式。

  • 支持 MySQL、PostgreSQL 以及所有主流的 SQL 数据库。
  • 将SQL数据库转换为NoSQL数据库。
  • 无需编写代码,基于图形化的数据映射。
  • 将地图数据库的数据转换为其他数据格式,或将其他数据格式的数据转换为地图数据库格式。
  • 指定数据库的密钥设置。
  • 即时转换,并提供经济实惠的自动化解决方案。
  • 输出日志记录与错误处理。
  • 定义数据库表的操作。
  • 直接查询数据库。
  • 对数据库输入组件进行排序。

将 MySQL 数据库转换为 PostgreSQL 数据库。

MapForce 的一个常见应用是实现 MySQL 和 PostgreSQL 数据库之间的数据迁移。MapForce 通过图形化的、拖放式的数据映射工具,以及丰富的过滤器和数据处理函数库,使得这一过程变得简单,从而能够转换源数据。

MapForce 中的数据库连接向导可以轻松建立连接。它支持直接连接到 SQLite 数据库文件,无需额外配置。对于 PostgreSQL 连接,既支持直接连接,也支持通过 ODBC 或 JDBC 等接口(驱动程序)进行基于驱动程序的连接。直接连接不需要任何驱动程序。

当您在映射面板中加载 MySQL 和 PostgreSQL 数据库结构时,MapForce 会自动解析数据库模式,让您选择可用的数据库表和视图,并识别表之间的关系。

在 MapForce 中将 MySQL 数据库转换为 PostgreSQL 数据库。

一旦您已加载数据库映射所需的所有内容模型,只需通过拖动连接线,将源结构和目标结构连接起来,即可完成映射过程。

采用无需编写代码的 MapForce 解决方案,可以轻松满足常见的的数据转换需求,例如:

  • 将 PostgreSQL 数据库转换为 MySQL 数据库。
  • 从 PostgreSQL 迁移到 MySQL。
  • 将 PostgreSQL 数据库导出到 MySQL。
  • 将 MySQL 数据库转换为 PostgreSQL 数据库。

数据过滤与处理。

许多数据库映射都需要根据布尔条件或SQL和SQL/XML语句,对源数据和目标数据进行转换。您可能需要进行逻辑比较、数学计算或字符串操作,检查数据库中特定值的存在,并对数据进行其他修改。在上面的截图中,数据处理功能以连接源数据模型和目标数据模型的线条之间的方框形式呈现。

数据处理功能使您能够实时执行高级数据库映射,以满足各种实际应用中的数据转换需求。

即时数据库转换。

一旦您完成了映射配置,内置的 MapForce 引擎允许您只需点击一下即可查看和保存结果。

您的 MySQL 到 PostgreSQL 映射会将结果以 SQL 脚本的形式输出(例如,SELECT、INSERT、UPDATE 和 DELETE 语句),这些脚本可以直接在 MapForce 内部运行,并作用于您的目标数据库。

在预览输出结果后,您将可以选择通过 MapForce Server 自动化数据转换过程。

数据库输出日志记录(追踪)。

数据库输出追踪功能可以轻松记录映射项目在运行时对 PostgreSQL 或 MySQL 数据库所做的所有更改。

当启用追踪功能时,诸如数据库插入或更新操作,以及错误等事件会被记录在一个XML文件中,您可以稍后分析该文件,或者以自动化的方式进一步处理这些数据。

数据库追踪功能可以在数据库组件、表、存储过程或数据库字段级别启用。您可以选择追踪所有消息,也可以只追踪错误信息,或者完全禁用追踪功能。

一旦您选择了所需的跟踪级别,映射项目中受影响的数据库组件将扩展为一个 XML 树,其中显示了日志结构。如果您希望日志文件采用除 XML 之外的其他格式,您可以将数据从该文件中映射到 MapForce 支持的其他数据格式(例如,文本文件或甚至是另一个数据库)。

当您点击“输出”按钮预览映射结果时,您还可以看到一个示例,展示了在执行映射时,跟踪日志会呈现的样貌。

数据库追踪,将日志输出用于数据库转换。

数据库事务错误处理。

MapForce 还提供数据库事务处理功能,当出现错误时,它可以回滚数据库转换过程中受影响的部分,并且可以选择继续执行其余的映射操作。

有时会出现错误,但这些错误不会阻止数据库映射的其余部分继续执行。例如,当某些数据库约束阻止映射操作插入或更新无效数据时,就会发生这种情况。

启用数据库事务处理功能会将数据库组件所做的所有更改都包含在一个事务中。如果出现错误,该事务将被回滚。您可以选择继续执行其余的映射,也可以选择停止进一步的执行。您可以在数据库组件级别和表操作级别启用事务。

支持数据库事务,以便进行错误处理。

当映射设计者希望捕获有效的数据,同时忽略无效的数据时,这个功能非常有用。

高级数据库映射。

为了增强其数据库映射和集成功能,MapForce 包含一个“数据库查询”选项卡,用于执行直接的数据库查询。当您使用“数据库查询”选项卡连接到数据库时,MapForce 会在浏览器窗口中以分层树状结构显示其表。MapForce 不仅支持 MySQL 和 PostgreSQL,还提供以下专业支持:

  • 火鸟。
  • IBM DB2 for iSeries数据库系统。
  • IBM DB2数据库系统。®
  • Informix (公司名称或产品名称,具体含义取决于上下文)®
  • MariaDB
  • Microsoft Access (微软 Access)™
  • Microsoft® Azure SQL数据库。
  • Microsoft® SQL Server (SQL服务器)®
  • MySQL数据库。®
  • Oracle®
  • PostgreSQL数据库系统。
  • Progress OpenEdge
  • SQLite。
  • 赛贝斯 (Sybase)®
  • 泰瑞数据 (Teradata)
  • MongoDB
  • CouchDB
在定义数据库转换映射时,可以查询数据库。

您可以使用SQL编辑器标签来显示、编辑和执行SQL语句。您可以选择打开现有的SQL文件,也可以通过拖放和自动补全功能,从头开始创建SQL语句。

您可以执行您的SQL脚本,并将结果以表格形式显示。此外,您可以将检索到的数据和SQL脚本分别保存到不同的文件中。

数据库密钥设置。

MapForce数据库键设置允许您自定义如何将主键和外键值添加到目标数据库。您可以选择在MapForce中手动输入键值,也可以让数据库系统自动生成这些值。

在数据库表中,如果主键和/或外键关系没有明确定义,MapForce 允许您直接在映射文件中定义这些关系,而不会对源数据产生任何影响。

定义数据库表的操作。

当您将数据映射到数据库时,MapForce 允许您选择数据库表操作,从而控制数据如何写入 MySQL 或 PostgreSQL 数据库。这为您提供了充分的灵活性,可以自动化最复杂的的数据管理任务。

这个易于使用的“数据库表操作”对话框,允许您定义所选表格中的列,以便确定在数据库中应该执行的操作(插入、更新、删除)。

这为通过 MapForce 处理 XML、数据库、EDI、XBRL、文本文件、Excel、JSON、JSON5、Web 服务或其他数据库数据时,对数据库记录进行操作提供了前所未有的灵活性。

学习如何在 MapForce 中配置数据库表的操作。

对SQL存储过程的支持。

MapForce 提供了强大的对存储过程的支持,可以将其用作输入组件(提供结果的存储过程)或输出组件(用于插入或更新数据的存储过程)。 此外,还可以将存储过程以函数调用的形式插入,允许用户提供输入数据,执行存储过程,并读取/映射输出数据到其他组件。

此截图展示了在 SQL Server 中,如何将一个存储过程映射为一个 XML 文件的过程。该存储过程返回一个数据表,其中显示了所有在指定员工 ID 之上的管理人员(该员工 ID 作为输入参数提供,在本例中为常量 67)。

该参数也可以以计算值或从数据库其他部分检索的数据元素的形式提供。

MapForce 提供一个上下文菜单,允许用户运行存储过程,从而显示用于数据映射的数据结构。执行所示的映射操作会生成 XML 输出。

高级数据映射工具支持存储过程。

对数据库输入组件进行排序。

在数据库内部执行的 SQL 查询并非总是能够满足复杂的数据映射任务。MapForce 通过 SQL-WHERE/ORDER 组件,为需要额外处理的数据库输入提供额外的数据库排序功能。此外,当映射过程中的其他数据或条件影响数据的排序顺序时,该功能也同样适用。

数据库表操作中对NULL值的支持。

“数据库表操作”对话框支持对 NULL 值的比较。 针对包含 NULL 值的数据库,使用能够识别 NULL 值的比较方式是一种更有效的方法。 MapForce 用户可以配置数据库映射,以便以一种能够识别 NULL 值的形式进行数据比较,具体规则取决于所涉及的数据库类型。

右侧展示的数据映射旨在更新目标表,同时避免插入重复条目。 两个表都允许“电子邮件”字段为空(NULL),因此可能存在在每个表中,姓名相同但“电子邮件”字段为空的记录。

点击“目标”数据库表旁边的“操作”图标,会打开“数据库操作”对话框。在电子邮件字段旁边的“等于 NULL”复选框允许 MapForce 将源数据和目标数据中的 NULL 值在数据映射过程中视为相等,即使根据数据库规则,它们并不被认为是相等的。

MapForce 中的空值处理数据库映射。

使用 MapForce Server 自动化数据库映射执行。

Altova MapForce Server 它包含了为 MapForce 开发的内置数据转换引擎,并且经过大幅增强,可以在服务器环境中运行。MapForce Server 的功能包括: 数据转换。 可以将数据从 PostgreSQL 迁移到 MySQL,或者进行任何组合的数据转换,包括 XML、数据库、EDI、XBRL、文本文件、Excel、JSON、Shopify 以及 Web 服务。该过程利用 MapForce 中定义的映射规则,将预处理和优化的数据映射存储在执行文件中。MapForce Server 通过提供服务器功能,如并行处理、多线程、批量 SQL 插入、跨平台支持等,将数据转换提升到更高的水平。

预处理能够提高大多数数据映射的性能,并减少内存占用。MapForce Server 在 FlowForce Server 的管理下运行,可以独立配置,通过命令行执行,也可以通过 API 进行程序化操作。

在设计并测试好 MapForce 映射规则后,可以通过 MapForce Server 来执行这些规则,从而自动化需要重复数据转换的业务流程。

通过MapForce自动化数据库映射任务。

MapForce 软件可以预处理和优化数据映射关系,并将这些关系存储在 MapForce Server 的执行文件中,以便通过 MapForce Server 的命令行进行执行。此外,它还可以将这些映射关系上传到 FlowForce Server,用于 FlowForce Server 作业中使用。

当 MapForce Server 在 FlowForce Server 的管理下运行时,数据映射操作会作为 FlowForce Server 作业的步骤来执行,这些步骤基于 FlowForce Server 作业中定义的触发器。例如,当一个新的 XBRL 数据实例文件到达某个目录时,这会触发一个多步骤的 FlowForce Server 作业,该作业首先使用 RaptorXML+XBRL Server 验证该文件,然后执行 MapForce Server,从 XBRL 数据中提取特定数据,并将这些数据插入到数据库中。