我可以针对另一个实例上的表创建视图吗?

Mat*_*ics -3 sql-server-2000 view

我需要从不同服务器但相同域上的另一个 SQL Server 查询表,但我不确定如何才能做到这一点。

我尝试了这个答案中的解决方案但它对我不起作用,因为我得到了 SQL Server 2000(请不要讨厌 :-))。

当我尝试给出的解决方案时,我收到此错误:

第 23 行:“-”附近的语法不正确。

这是因为命令与 SQL Server 2000 不兼容。

编辑

SELECT * FROM AnotherServer.AnotherServerDatabase.Server.Table1
Run Code Online (Sandbox Code Playgroud)

Aar*_*and 5

我将在这里胡乱猜测,问题不在于您的命令“不兼容”,而在于您的链接服务器名称、数据库名称或表名称包含-. 要解决此问题,请用[square brackets].

CREATE VIEW dbo.viewname
AS
  SELECT column_names_please_not_*
    FROM [AnotherServer].[AnotherServerDatabase].dbo.[Table1];
Run Code Online (Sandbox Code Playgroud)

当然,首先,您需要创建一个链接服务器,并在权限方面进行适当设置。