1

我的 SQL 服务器实例名称的格式为:'My-Server\InstanceName'

我想给服务器别名'InstanceName'。我在配置管理器中做到了这一点。当我连接到服务器时,我可以使用该别名进行连接。但是,当我想完全限定查询中的对象时(例如,从 InstanceName.Database.dbo.Table 中选择 *),它不起作用。它说它在 sys.servers 中找不到该服务器。为什么是这样?连接后,它似乎没有将别名带到查询中。

谢谢!

4

1 回答 1

1

InstanceName 和别名是两个不同的东西。

对于本地服务器,使用 Database.dbo.Table

要连接到另一个服务器(或另一个实例),您应该添加链接服务器 https://docs.microsoft.com/en-us/sql/relational-databases/linked-servers/linked-servers-database-engine

通常您不需要任何别名,但如果您真的想这样做,请使用示例:

EXEC sp_addlinkedserver     
   @server=N'S1_instance1',   
   @srvproduct=N'',  
   @provider=N'SQLNCLI',   
   @datasrc=N'S1\instance1'
于 2017-03-28T14:18:52.300 回答