2

如何在不同的数据库服务器之间传输数据,这是一项日常工作,即:

插入 ServerA..table1
   从 ServerB.table2 中选择数据。

(这只是一个例子,实际情况是我们从许多服务器中选择数据,然后做一些连接,然后插入到目标中)。

我们不能使用 SSIS,我们不能使用链接服务器,我们该怎么做?

顺便说一句,这是日常工作,数据量很大。

4

5 回答 5

3

一个简单的命令行 BCP 脚本应该适合您。例如:

bcp AdventureWorks2012.Sales.Currency out Currency.dat -T -c -SServer1
bcp AdventureWorks2012.Sales.Currency in Currency.dat -T -c -SServer2

这里有更多细节

于 2012-09-14T12:12:36.867 回答
1

同步框架可能值得一看:http: //msdn.microsoft.com/en-us/sync/bb736753.aspx

于 2012-09-14T10:06:10.417 回答
0

我的答案已转换为评论,但我正在添加更多信息。

我猜你正在寻找这个答案:

What is the best way to auto-generate INSERT statements for a SQL Server table?

获得代码后,只需USE your_databasename_where_to_copy_data在开头添加,执行并瞧

编辑: 当您想使用代码即时执行此操作时,请尝试在 SO 上针对此问题提供的一些解决方案。基本上它与您的代码提案类似,但有一些不同之处,例如:

INSERT INTO bar..tblFoobar( *fieldlist* )
SELECT *fieldlist* FROM foo..tblFoobar
于 2012-09-14T09:48:17.293 回答
0

看这个问题: SQL备份版本与此服务器不兼容

我的回答中的第一个选项应该适用于您的情况

于 2012-09-14T09:44:20.857 回答
0

您可以使用 C#.net SqlBulkCopy 方法。

于 2012-09-14T09:50:27.320 回答