无法从链接的SQL Server查询视图

时间:2012-01-31 22:17:42

标签: sql-server select view linked-server

在SQL Server Management Studio中,我已将SQL Server sql02链接到本地​​服务器:

sp_addlinkedserver 'sql02'
GO

我可以从这个服务器查询表:

SELECT * FROM SQL02.SomeDatabase.dbo.SomeTable

但是,当我尝试查询视图时,如

SELECT * FROM SQL02.SomeDatabase.dbo.SomeView

我收到以下错误消息:

Msg 7314, Level 16, State 1, Line 1
The OLE DB provider "SQLNCLI10" for linked server "SQL02" does not contain the 
table ""SomeDatabase"."dbo"."SomeView"". The table either does not exist or the
current user does not have permissions on that table.

同意SomeView不存在于表格中。我做错了什么?

潜在相关事实:

        
  • SQL Server的本地版本是10.50.1617
  •     
  • 链接服务器的版本为8.0.2282
  •     
  • 我可以从视图中的所有基础表中进行选择

1 个答案:

答案 0 :(得分:4)

看起来是权限问题,您是否检查过该视图的权限?您的查询没有任何问题。

另外,您是否检查了该查询查询的表格?还要检查表权限。

作为提示:尝试在特定用户上运行视图,如果成功,请尝试使用该特定用户链接服务器。