在SQL Server的查询分析器中,可以很简单地实现相似以下SQL语句:
SELECT * FROM db1.table as t1 INNER JOIN db2.table as t2 ON t1.id = t2.id
INSERT INTO db1.table SELECT * FROM db2.table
等等……
但是在C#程序开发中,我们通常在ConnectionString中只能描述一个数据库的存在,例如:
Data Source=127.0.0.1;Initial Catalog=db1;User ID=sa;pwd=sa
这样只能实现在一个数据库下的操作,那么假如像前面的SQL语句那样,一条语句牵涉到两个或多个数据库的话,C#能否实现?假如可以实现,该怎么样做呢?
SELECT * FROM db1.table as t1 INNER JOIN db2.table as t2 ON t1.id = t2.id
INSERT INTO db1.table SELECT * FROM db2.table
等等……
但是在C#程序开发中,我们通常在ConnectionString中只能描述一个数据库的存在,例如:
Data Source=127.0.0.1;Initial Catalog=db1;User ID=sa;pwd=sa
这样只能实现在一个数据库下的操作,那么假如像前面的SQL语句那样,一条语句牵涉到两个或多个数据库的话,C#能否实现?假如可以实现,该怎么样做呢?
解决方案
5
20
只要你登录数据库使用的用户具有同时访问这两个数据的权限就Ok的。
10
或你把要执行的这条语句放到存储过程里面
通过链接服务器连接B数据库。
通过链接服务器连接B数据库。
5
事务死锁的样子。