Condividi tramite


Utilizzo di server collegati in SMO

Un server collegato rappresenta un'origine dati OLE DB in un server remoto. Le origini dati OLE DB remote vengono collegate all'istanza di SQL Server tramite l'oggetto LinkedServer.

I server di database remoti possono essere collegati all'istanza corrente di MicrosoftSQL Server tramite un provider OLE DB. In SMO i server collegati sono rappresentati dall'oggetto LinkedServer. La proprietà LinkedServerLogins fa riferimento a una raccolta di oggetti LinkedServerLogin in cui sono archiviate le credenziali di accesso necessarie per stabilire una connessione con il server collegato.

Provider OLE DB

In SMO i provider OLE DB installati sono rappresentati da una raccolta di oggetti OleDbProviderSettings.

Esempio

Per l'esempio di codice seguente, è necessario selezionare l'ambiente, il modello e il linguaggio di programmazione per la creazione dell'applicazione. Per ulteriori informazioni, vedere Creare un progetto SMO per Visual Basic in Visual Studio .NET e Creare un progetto SMO per Visual C# in Visual Studio .NET.

Creazione di un collegamento a un server del provider OLE DB in Visual Basic

Nell'esempio di codice viene illustrato come creare un collegamento a un'origine dati SQL Server OLE DB eterogenea tramite l'oggetto LinkedServer. Specificando SQL Server come nome di prodotto, è possibile accedere ai dati nel server collegato tramite il provider OLE DB di Microsoft SQL Server Client, ovvero il provider OLE DB ufficiale per 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()

Creazione di un collegamento a un server del provider OLE DB in Visual C#

Nell'esempio di codice viene illustrato come creare un collegamento a un'origine dati SQL Server OLE DB eterogenea tramite l'oggetto LinkedServer. Specificando SQL Server come nome di prodotto, è possibile accedere ai dati nel server collegato tramite il provider OLE DB di SQL Server Client, ovvero il provider OLE DB ufficiale per 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(); 
} 

Creazione di un collegamento a un server del provider OLE DB in PowerShell

Nell'esempio di codice viene illustrato come creare un collegamento a un'origine dati SQL Server OLE DB eterogenea tramite l'oggetto LinkedServer. Specificando SQL Server come nome di prodotto, è possibile accedere ai dati nel server collegato tramite il provider OLE DB di SQL Server Client, ovvero il provider OLE DB ufficiale per 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()