c#如何连接两个mysql数据库中的两张表

时间:2021-02-18 14:55:30
数据库结构不能改,但是又必须连接DB1数据库中的table1表和DB2数据库中的table2表
 con1 = new MySqlConnection("Server=172.117.30.103;Uid=tlflsuser;Pwd=password123;Database=tfm");
 con2 = new MySqlConnection("Server=172.117.30.103;Uid=tlflsuser;Pwd=password123;Database=tfm");
  con1.Open();
  con2.Open();
string sql="select.....from DB2.table2, DB1.table1 where table1.字段 = table2.相应字段 and table2.相应字段 = 相应值;";
 MySqlCommand cmd = new MySqlCommand("sql'", con1,con2);
sqlcommand好像connection只能添加一个参数啊,这个到底怎么连接

5 个解决方案

#1


MySqlCommand cmd1 = new MySqlCommand("sql'", con1);
MySqlCommand cmd2 = new MySqlCommand("sql'", con2);

#2


只要一个数据库连接
对 SQL 指令中出现的表名加上数据库名前缀

#3


如果是在一个实例里,你现在这样写没问题呀,就是数据库.表名 

如果是两个数据库,那连不到一起吧,
sqlserer数据库本身有联接服务器的概念,
不知道mysql有没有类似的应用

#4


MySqlCommand cmd1 = new MySqlCommand("sql'", con1);
MySqlCommand cmd2 = new MySqlCommand("sql'", con2);
2个连接,下载缓存到本地,然后 LINQ TO SQL,貌似。
如果数据较多,跨数据库查询是非常麻烦的事情,还是要用数据库引擎去处理,参考以下帖子。
http://blog.csdn.net/hpx_blog/article/details/21628263

#5


你看看使用ODBC能不能实现你想实现的功能

#1


MySqlCommand cmd1 = new MySqlCommand("sql'", con1);
MySqlCommand cmd2 = new MySqlCommand("sql'", con2);

#2


只要一个数据库连接
对 SQL 指令中出现的表名加上数据库名前缀

#3


如果是在一个实例里,你现在这样写没问题呀,就是数据库.表名 

如果是两个数据库,那连不到一起吧,
sqlserer数据库本身有联接服务器的概念,
不知道mysql有没有类似的应用

#4


MySqlCommand cmd1 = new MySqlCommand("sql'", con1);
MySqlCommand cmd2 = new MySqlCommand("sql'", con2);
2个连接,下载缓存到本地,然后 LINQ TO SQL,貌似。
如果数据较多,跨数据库查询是非常麻烦的事情,还是要用数据库引擎去处理,参考以下帖子。
http://blog.csdn.net/hpx_blog/article/details/21628263

#5


你看看使用ODBC能不能实现你想实现的功能