我的SQL服务器实例名称格式为:'My-Server \ InstanceName'
我想为服务器提供别名'InstanceName'。我是在Configuration Manager中完成的。当我连接到服务器时,我可以使用该别名进行连接。但是,当我想完全限定查询中的对象时(例如,从InstanceName.Database.dbo.Table中选择*),它不起作用。它说它无法在sys.servers中找到该服务器。为什么是这样?它似乎在连接后没有将别名带到查询中。
谢谢!
答案 0 :(得分: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'