Поделиться через


Использование связанных серверов в объектах SMO

Связанный сервер представляет источник данных OLE DB на удаленном сервере. Удаленные источники данных OLE DB связываются с экземпляром SQL Server при помощи объекта LinkedServer.

Удаленные серверы базы данных могут быть связаны с текущим экземпляром Microsoft SQL Server с помощью поставщика OLE DB. В SMO связанные серверы представлены объектом LinkedServer. Свойство LinkedServerLogins указывает на коллекцию объектов LinkedServerLogin. В них хранятся учетные данные входа, требуемые для установления соединения со связанным сервером.

Поставщики OLE DB

В SMO установленные поставщики OLE DB представлены коллекцией объектов OleDbProviderSettings.

Пример

В следующем примере кода для создания приложения необходимо выбрать среду, шаблон и язык программирования. Дополнительные сведения см. в разделах Как создать проект SMO на языке Visual Basic в среде Visual Studio .NET и Как создать проект SMO на языке Visual C# в среде Visual Studio .NET.

Создание ссылки на сервер поставщика OLE-DB в Visual Basic

Пример кода показывает, как создать ссылку на разнородный источник данных SQL Server OLE DB с помощью объекта LinkedServer. При указании SQL Server в качестве названия продукта, доступ к данным на связанном сервере осуществляется с помощью поставщика данных OLE DB Microsoft SQL Server, являющегося официальным поставщиком OLE DB для 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()

Создание ссылки на сервер поставщика OLE-DB в Visual C#

Пример кода показывает, как создать ссылку на разнородный источник данных SQL Server OLE DB с помощью объекта LinkedServer. Если в качестве названия продукта указан SQL Server, то доступ к данным на связанном сервере осуществляется с помощью поставщика OLE DB для клиента SQL Server, являющегося официальным поставщиком OLE DB для 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(); 
} 

Создание ссылки на сервер поставщика OLE-DB в PowerShell

Пример кода показывает, как создать ссылку на разнородный источник данных SQL Server OLE DB с помощью объекта LinkedServer. Если в качестве названия продукта указан SQL Server, то доступ к данным на связанном сервере осуществляется с помощью поставщика OLE DB для клиента SQL Server, являющегося официальным поставщиком OLE DB для 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()