如何将两个表与链接服务器连接
本文关键字:链接 服务器 连接 两个 | 更新日期: 2023-09-27 18:36:11
我需要连接来自 2 个不同服务器的 2 个表。
如何在 C# 中做到这一点?
这是我到目前为止所拥有的:
cmd = new MySqlCommand(String.Format("INSERT INTO {0} (a,b,c,d) SELECT (a,b,c,d) FROM {1}", ConfigSettings.ReadSetting("main_table"), ConfigSettings.ReadSetting("main_table")), con);
ConfigSettings.ReadSetting("main_table")
对他们俩来说是一样的。
con.ConnectionString = ConfigurationManager.ConnectionStrings["con1"].ConnectionString;
con2.ConnectionString = ConfigurationManager.ConnectionStrings["con2"].ConnectionString
如何使此cmd具有2个不同的连接字符串和相同的表名称。表名会改变,这就是为什么它保存在配置中。
MySQL
无法动态链接服务器。
如果要在数据库之间进行直接复制,则需要在目标服务器上创建一个指向源服务器的FEDERATED
表,然后只需发出以下命令:
INSERT
INTO main_table (a, b, c, d)
SELECT a, b, c, d
FROM federated_main_table
在目标服务器上。
如果您有多个源服务器和/或表,则应为每个源服务器和/或表创建一个联合表。
另一个选项是选择源服务器到客户端的所有数据(到数组、持久记录集等中),然后将客户端上缓存的数据插入到目标服务器上的表中。