SQL Server:是否可以在不设置链接服务器的情况下从另一台SQL服务器获取数据?

时间:2010-07-30 15:57:16

标签: sql sql-server tsql linked-server

我需要执行以下查询(例如):

SELECT c1.CustomerName FROM Customer as c1
INNER JOIN [ExternalServer].[Database].[dbo].[Customer] as c2
ON c2.RefId = c1.RefId

出于某些安全原因,我的客户端不允许我创建链接服务器。我执行此查询的用户可以访问这两个表。是否可以在不使用链接服务器的情况下使其工作?谢谢。

2 个答案:

答案 0 :(得分:4)

您可以使用OPENROWSET,这将需要连接信息,用户名和&密码...

虽然我知道客户认为与他们的数据保持连接是有风险的,但这就是您锁定帐户的原因。 OPENROWSET意味着以纯文本形式包含连接信息。

答案 1 :(得分:0)

'链接服务器'是一个非常具体的东西 - 基本上,服务器之间的永久连接。我可以想到各种不想要的理由,同时对于编写组合来自两个不同数据源的数据的查询没有任何问题。

无论如何,根据您的要求 - 如果这仅用于临时查询,如果在SQL-Server内部,OPENROWSET是好的,或者如果您想在MS Access中执行此操作,只需链接到两个表,并且访问查询不会关心一个来自一个服务器,一个来自另一个服务器。

或者,使用Web或Windows前端,您可以独立地将每个表查询为数据对象,然后在其上构建单独的查询。

Http Endpoints ...

... Web服务

有一百万种方式。正如@Lasse建议的那样,我不会那么快地假设任何形式的“链接”这些数据会使你成为某种路由数据链接器。

相关问题