Freigeben über


Verteilte Abfragen bei mehreren Instanzen von SQL Server

Das Angeben einer Instanz von SQL Server 2005 für einen Server, auf dem mehrere Instanzen von SQL Server 2005 ausgeführt werden, erfordert keine Syntaxänderungen an Transact-SQL-Elementen, die in verteilten Abfragen verwendet werden. Instanzen können mit einer dieser Methoden in verteilten Abfragen angegeben werden:

  • Geben Sie einen Servernamen mit der Syntax 'server_name\instance_name' im @datasrc-Parameter von sp_addlinkedserver an.
  • Geben Sie 'server=server_name\instance_name' in einer Verbindungszeichenfolge an.

Wenn keine Instanz angegeben ist, stellt die verteilte Abfrage eine Verbindung zu der Standardinstanz von SQL Server 2005 auf dem angegebenen Server her.

Im folgenden Beispiel wird das Angeben einer bestimmten Instanz mit dem Namen Payroll auf einem Server mit dem Namen London gezeigt.

-- Define a linked server on an instance of SQL Server by using @datasrc.
sp_addlinkedserver
    @server = 'LondonPayroll1',
    @srvproduct = ' ',
    @provider = 'SQLNCLI',
    @datasrc = 'London\Payroll'

-- Define a linked server on an instance of SQL Server by using
-- server_name\instance_name in a provider string.
sp_addlinkedserver
    @server = 'LondonPayroll2',
    @srvproduct = ' ',
    @provider = 'SQLNCLI',
    @provstr = 'Server=London\Payroll'

-- Specify an instance of SQL Server in OPENDATASOURCE
-- by using a provider string.
SELECT *
FROM OPENDATASOURCE('SQLNCLI',
    'Data Source=London\Payroll;Integrated Security=SSPI')
    .AdventureWorks.HumanResources.Employee

-- Specify an instance of SQL Server in OPENROWSET
-- by using a provider string.
SELECT a.*
FROM OPENROWSET(
     'SQLNCLI',
     'Server=London\Payroll;Trusted_Connection=yes',
      AdventureWorks.HumanResources.Employee) AS a

Siehe auch

Konzepte

Verteilte Abfragen
SQL Native Client OLE DB-Anbieter

Andere Ressourcen

sp_addlinkedserver (Transact-SQL)

Hilfe und Informationen

Informationsquellen für SQL Server 2005