【发布时间】:2012-09-05 19:53:27
【问题描述】:
服务器A
Table1
Id Name State Country
1 Abc OH USA
Table2
Id Counties Places
1 abc def
1 koi koii
1 joi joio
服务器B
Table1
Id Name State Country
Table2
Id Counties Places
我在两台服务器下都有 2 台服务器 ServerA 和 ServerB,有两个表 Table1/Table2 我试图将 Table1 中的单行和 Table2 中的关联行复制到 ServerB 的 Table1 和 Table2。
这就是我尝试这样做的方式:
connection1 = connection to ServerA
connection2 = connection to ServerB
SqlCommand cmd1 = new SqlCommand("Select * from Table1 where id = 1");
SqlCommand cmd2 = new SqlCommand("Select * from Table2 where id = 1");
Connection1.Open();
Connection2.Open();
SqlDataReader reader1 = cmd1.ExecuteReader();
SqlDataReader reader2 = cmd2.ExecuteReader();
var value1 = reader1.read();
var value2 = reader2.read();
我使用SqlDataReader 并执行上述命令并获取数据并将其插入ServerB Table1 and Table2。
这是正确的方法吗?可以用更好的sql命令吗?
【问题讨论】:
-
如果都是 Sql-Server 数据库,你应该链接两个服务器并直接按 sql 将它们复制到数据库中,而不是先将它们全部加载到内存中。
标签: sql sql-server-2008 c#-4.0