Sql server SQL-连接到具有命名实例的链接服务器

Sql server SQL-连接到具有命名实例的链接服务器,sql-server,linked-server,named-instance,Sql Server,Linked Server,Named Instance,如何连接到链接SQL server的命名实例 如果没有链接,我将执行以下操作: ServerName.DatabaseName.dbo.TableName ServerName\InstanceName.DatabaseName.dbo.TableName 如果它是链接的,我将假设如下: ServerName.DatabaseName.dbo.TableName ServerName\InstanceName.DatabaseName.dbo.TableName 但是SQL不喜欢“\”

如何连接到链接SQL server的命名实例

如果没有链接,我将执行以下操作:

ServerName.DatabaseName.dbo.TableName
ServerName\InstanceName.DatabaseName.dbo.TableName
如果它是链接的,我将假设如下:

ServerName.DatabaseName.dbo.TableName
ServerName\InstanceName.DatabaseName.dbo.TableName
但是SQL不喜欢“\”

正确的语法是什么检查


您可以用括号括住服务器名称

正确的语法是
[ServerName\InstanceName].DatabaseName.dbo.TableName

如果使用默认实例,则无需指定实例名称

使用默认实例的示例: [MyServer].[MyDatabase].[MySchema].[MyTable]

注意:如果您不知道自己的模式名,请尝试一下[dbo],因为这是默认模式

所以像这样的东西应该适合你

SELECT *
FROM [MyTable] t
INNER JOIN [MyLinkedServer].[MyLinkedDatabase].[MyLinkedSchema].[MyLinkedTable] lt ON lt.Id = t.Id
我得到这样的信息:“在sysservers中找不到服务器‘ServerName\InstanceName’。执行sp_addlinkedserver将服务器添加到sysservers”。