使用SQLConnector和SQLCommand连接来自2个或更多数据库的表
本文关键字:多数据 数据库 2个 SQLConnector SQLCommand 连接 使用 | 更新日期: 2023-09-27 18:09:01
如何执行这样的查询;
SELECT
c.Name
FROM db1..TableA a(nolock)
join db2..TableA b(nolock) on a.id = b.id
join db2..TableB c(nolock) on b.id = c.id
join db2..TableC as d on c.id = d.id
where c.id = '2314'
与SQLConnector
和SQLCommand
?似乎你一次只能连接到一个数据库。
我意识到我可以有两个SQLConnector
实例,然后在我的c#代码中加入结果,但显然这将是一个可怕的解决方案。有什么简单的解决办法吗?
如果您引用的是单个服务器,那么您可以使用由三个部分组成的name
但是这个名字需要所有者,通常是dbo试着
SELECT
c.Name
FROM db1.dbo.TableA a(nolock)
join db2.dbo.TableA b(nolock) on a.id = b.id
join db2.dbo.TableB c(nolock) on b.id = c.id
join db2.dbo.TableC as d on c.id = d.id
where c.id = '2314'
如果您在SSMS中右键单击表并单击select top 1000 rows,它将构建正确的3部分名称。
如果数据库位于不同的服务器上。
通过链接服务器,您可以在单个连接上访问多个服务器。
链接服务器(数据库引擎)
创建链接服务器
那么您只需通过单个连接引用4部分名称
该4部分名称不限于SSMS
这个由4部分组成的名称可以用于从。net连接。