两个不同数据库架构之间的数据映射

本文关键字:之间 映射 数据 数据库 两个 | 更新日期: 2023-09-27 18:32:20

我必须设计一个带有sql数据库的系统,其工作是从不同的数据库中获取数据,这些数据库可能位于另一个数据库,如mysql或oracle等。然后系统会将该数据库的属性与我的数据库架构映射并存储它们。示例参考链接:https://msdn.microsoft.com/en-us/library/aa728893(v=vs.71).aspx由于我是新手,因此无法附加图像,这就是我提供链接的原因。

所有的搜索最终都得到了映射工具,但实际上我想要的是如何自己创建该工具。我不是专业人士,但一点点推动对我来说就足够了,非常感谢。提前谢谢。

两个不同数据库架构之间的数据映射

正如我在评论中所说,这对我来说听起来是集成服务包的工作。

如果要使用 SQL Server Integration Services Microsoft应首先在开发计算机上安装 Microsoft SQL Server 数据工具。

之后,首先在 Visual Studio 中创建一个新的集成服务项目。然后,可以添加 ODBC 连接管理器来管理不同的数据库数据输入。之后,可以在包中添加不同的转换容器对象,以根据需要转换数据。最后,您需要将所有这些元素的输出指定到数据库中,以存储从其他来源收集的信息。

还可以为每个源数据库创建不同的包,以便可以分离任务。不幸的是,一个完整的教程对我来说很长,但你可以在Microsoft网站上查看教程。这里再举一个例子。

作为警告,您应该非常小心数据类型,因为如果您没有正确匹配/转换它们,包将失败并出现不那么明显的错误。

如果选择在其中创建应用程序的.tt(T4 模板)解决方案,则应首先连接到源数据库并循环访问表定义以获取列,然后将其存储为 xml 文件。您必须在文本模板文件中进行匹配,以便在从数据源读取表时已完成匹配。

下面是一个应该可以帮助您入门的示例。请注意,在示例中,输出文件将是一个不.xml.cs文件,但您可以使用此 T4 指令<#@ output extension=".xml" #>非常轻松地对其进行配置。

请忽略此任务,任何形式的编程,不要这样做。尤其忽略实体框架。

我建议您使用众多ETL工具之一,并使用它设计工作。我可以推荐你 塔伦德.它非常容易学习,随着时间的推移,即使是开发人员也开始使用它。关于它的最好的部分是它可以连接到Web服务,企业解决方案以及可能的任何可以想象的数据库。

您要做的是设计并行独立运行的作业,然后将作业导出为独立的 JAR。chroneJob 或计划服务完成该过程以使其定期执行