Partager via


Utilisation de serveurs liés dans SMO

S’applique à : SQL ServerAzure SQL Database Azure SQL Managed Instance Azure Synapse Analytics

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 base 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 les exemples de code suivants, 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 C# dans Visual Studio .NET.

L’exemple de code montre comment créer un lien vers une source de données OLE DB SQL Server hétérogène à l’aide de l’objet LinkedServer . En spécifiant SQL Server comme nom de produit, les données sont accessibles sur le serveur lié à l’aide du fournisseur OLE DB du client SQL Server, 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();   
}   

L’exemple de code montre comment créer un lien vers une source de données OLE DB SQL Server hétérogène à l’aide de l’objet LinkedServer . En spécifiant SQL Server comme nom de produit, les données sont accessibles sur le serveur lié à l’aide du fournisseur OLE DB du client SQL Server, 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()