Requêtes distribuées sur plusieurs instances de SQL Server
La spécification d'une instance de SQL Server 2005 sur un serveur exécutant plusieurs instances de SQL Server 2005 ne nécessite aucune modification de la syntaxe des éléments Transact-SQL utilisés dans les requêtes distribuées. Des instances peuvent être spécifiées dans des requêtes distribuées en utilisant l'une des méthodes suivantes :
- Spécifiez un nom de serveur en utilisant la syntaxe 'server_name\instance_name' dans le paramètre @datasrc de sp_addlinkedserver.
- Spécifiez 'server=server_name\instance_name' dans une chaîne de connexion.
Si une instance n'est pas spécifiée, la requête distribuée se connecte à l'instance par défaut de SQL Server 2005 sur le serveur spécifié.
Les exemples ci-dessous montrent comment spécifier une instance spécifique nommée Payroll
sur un serveur nommé London
.
-- 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
Voir aussi
Concepts
Requêtes distribuées
Fournisseur OLE DB de SQL Native Client
Autres ressources
sp_addlinkedserver (Transact-SQL)