Partager via


Utilisation de serveurs liés dans SMO

Un serveur lié représente une source de données OLE DB sur un serveur distant. Les sources de données OLE DB distantes sont liées à l'instance de SQL Server à l'aide de l'objet LinkedServer.

Les serveurs de bases de données distants peuvent être liés à l'instance actuelle de Microsoft SQL Server à l'aide d'un fournisseur OLE DB. Dans SMO, les serveurs liés sont représentés par l'objet LinkedServer. La propriété LinkedServerLogins référence une collection d'objets LinkedServerLogin. Ces derniers stockent les informations d'identification requises pour établir une connexion avec le serveur lié.

Fournisseurs OLE DB

Dans SMO, les fournisseurs OLE DB installés sont représentés par une collection d'objets OleDbProviderSettings.

Exemple

Dans l'exemple de code suivant, vous devez sélectionner l'environnement, le modèle et le langage de programmation à utiliser pour créer votre application. Pour plus d'informations, consultez Créer un projet SMO Visual Basic dans Visual Studio .NET et Créer un projet SMO Visual C# dans Visual Studio .NET.

Création d'un lien vers un serveur de fournisseur OLE DB en Visual Basic

L'exemple de code suivant montre comment créer un lien vers une source de données hétérogènes OLE DB SQL Server à l'aide de l'objet LinkedServer. En spécifiant SQL Server comme nom de produit, l'accès aux données sur le serveur lié s'effectue en utilisant le fournisseur OLE DB Microsoft SQL Server Client, qui est le fournisseur OLE DB officiel pour SQL Server.

'Connect to the local, default instance of SQL Server.
Dim srv As Server
srv = New Server
'Create a linked server.
Dim lsrv As LinkedServer
lsrv = New LinkedServer(srv, "OLEDBSRV")
'When the product name is SQL Server the remaining properties are not required to be set.
lsrv.ProductName = "SQL Server"
lsrv.Create()

Création d'un lien vers un serveur de fournisseur OLE DB en Visual C#

L'exemple de code suivant montre comment créer un lien vers une source de données hétérogènes OLE DB SQL Server à l'aide de l'objet LinkedServer. En spécifiant SQL Server comme nom de produit, l'accès aux données sur le serveur lié s'effectue en utilisant le fournisseur OLE DB SQL Server Client, qui est le fournisseur OLE DB officiel pour SQL Server.

//Connect to the local, default instance of SQL Server. 
{ 
   Server srv = new Server(); 
   //Create a linked server. 
   LinkedServer lsrv = default(LinkedServer); 
   lsrv = new LinkedServer(srv, "OLEDBSRV"); 
   //When the product name is SQL Server the remaining properties are 
   //not required to be set. 
   lsrv.ProductName = "SQL Server"; 
   lsrv.Create(); 
} 

Création d'un lien vers un serveur de fournisseur OLE DB dans PowerShell

L'exemple de code suivant montre comment créer un lien vers une source de données hétérogènes OLE DB SQL Server à l'aide de l'objet LinkedServer. En spécifiant SQL Server comme nom de produit, l'accès aux données sur le serveur lié s'effectue en utilisant le fournisseur OLE DB SQL Server Client, qui est le fournisseur OLE DB officiel pour SQL Server.

#Get a server object which corresponds to the default instance
$svr = New-Object -TypeName Microsoft.SqlServer.Management.SMO.Server

#Create a linked server object which corresponds to an OLEDB type of SQL server product
$lsvr = New-Object -TypeName Microsoft.SqlServer.Management.SMO.LinkedServer -argumentlist $svr,"OLEDBSRV"

#When the product name is SQL Server the remaining properties are not required to be set. 
$lsvr.ProductName = "SQL Server"

#Create the Database Object
$lsvr.Create()