导出多个(相同)dbs并自动导入到一个

时间:2010-08-17 04:39:58

标签: c# .net sql sql-server-2008 append

我需要编写一个程序或脚本,客户端可以运行该程序或脚本来执行以下操作。我有一个在多台计算机上脱机运行的应用程序完全相同,但数据会有所不同。我们称之为SourceDB。因此,有SourceDB1,SourceDB2和SourceDB3。

然后有一个托管主应用程序的服务器,它具有完全相同的表结构.let称之为DB TargetDB。

我需要能够从SourceDB1获取数据并将其附加到TargetDB。我需要能够从Source DB2获取数据并将其附加到TargetDB。 SourceDB3也是如此。

我该怎么做?这是一个MS SQL 2008数据库。

每次有工作人员引入SourceDB1时,我都需要他能够运行批量或程序来导出数据。然后他可以复制该文件,并在服务器上运行它以将数据导入TargetDB。

有什么想法吗?

1 个答案:

答案 0 :(得分:0)

这就是SQL Server中的Merge Replication所要做的,但是第一次正确设置可能会很棘手。另一种选择是创建一个SSIS包,将来自SourceDB的数据转储到可以复制到NAS \ Fileshare的平面CSV文件中。然后将创建另一个SSIS包,用于从NAS \ Fileshare中的CSV平面文件将数据加载到TargetDB中。这就是许多ETL过程如何将数据从源系统提取到数据仓库的临时表中。

您不需要编写任何自定义代码来执行此类任务。 SQL Server中已经有一些工具可以用来处理这项工作。