在另一个SQL数据库中使用视图

时间:2010-02-04 10:28:29

标签: sql-server-2008

这是一个可能的问题。

我有一个包含用户信息的数据库文件,我有另一个用于支持请求的数据库文件。

我希望在支持数据库中使用我的用户数据视图。将支持作业链接到用户。是否可以通过访问中的链接表链接此信息,并从两个系统创建数据视图。

如果不是,我想我可以每晚将数据批量复制到支持系统的表中。

任何关于如何做到这一点的想法。

答案是

这是在我的支持数据库中

SELECT     Org_Name, Org_id, Con_id, Con_FirstName, Con_LastName, UserName
FROM         SupportDb.dbo.qry_UserDetails

3 个答案:

答案 0 :(得分:1)

为您找到this;)。 祝你好运。

答案 1 :(得分:1)

假设有2台服务器:

Source - 具有Users表的那个 目标 - 具有支持请求的那个。

在源代码上,您可以创建用户的只读视图,并创建一个SQL用户/ AD用户,该用户具有对该特定视图的读访问权。

然后在目标上创建链接服务器,指向源,并使用您刚刚创建的用户的凭据。

然后,您可以通过目标数据库访问该视图。祝你好运。

语法类似于server.database.schema.objecthttp://msdn.microsoft.com/en-us/library/ms177563.aspx

以及有关创建链接服务器的更多信息:http://msdn.microsoft.com/en-us/library/ms188279.aspx

答案 2 :(得分:1)

在支持数据库中,为(远程)用户数据库中的用户表创建同义词。

(根据用户访问权限,这可能需要链接服务器,或者可以使用server.database.schema.object表示法完成)

然后,创建一个与(远程)用户连接(本地)支持作业的视图。

使用此解决方案,您无法强制执行参照完整性。