Udostępnij za pośrednictwem


Nawiązywanie połączenia z wystąpieniem programu SQL Server

The first programming step in a SQL Server Management Objects (SMO) application is to create an instance of the Server object and to establish its connection to an instance of Microsoft SQL Server.

Można utworzyć wystąpienie Server object i ustanowić połączenie z wystąpienie SQL Server w trzy sposoby.Używanie pierwszego ServerConnection zmienna obiektu, aby zapewnić informacje połączenia.Drugi jest dostarczenie informacji o połączeniu jawnie ustawiając Server Właściwości obiektu.Trzeci jest przekazanie nazwę SQL Server wystąpienie w Server konstruktora obiektu.

Obiekt ServerConnection

Zaletą korzystania z ServerConnection jest zmienna obiektu, może nastąpić informacje o połączeniu.Zadeklarować Server zmienna obiektu.Następnie należy zadeklarować ServerConnection obiektu i zestaw właściwości połączenia informacje, takie jak nazwa wystąpienie SQL Serveri tryb uwierzytelnianie.Następnie należy przekazać ServerConnection zmienna obiektu jako parametr Server konstruktora obiektu.Nie zaleca udostępniania połączenia między obiektami innego serwera w tym samym czas.Użyj Copy metoda uzyskania kopii istniejącego ustawienia połączenia.

Ustawienie serwera jawnie właściwości obiektu

Alternatywnie można zadeklarować Server zmienna obiektu i wywołanie konstruktora domyślnego.Server Próbuje połączyć się z wystąpienie domyślne obiektu SQL Server z wszystkie domyślne połączenie ustawienia.

Podanie nazwy wystąpienie programu SQL Server w Konstruktorze obiektu serwera

Zadeklarować Server zmienna obiektu i przebiegu SQL Server Nazwa wystąpienie jako parametr ciąg znaków konstruktora.Server Obiektu ustanawia połączenie z wystąpienie SQL Server z ustawienia połączenia domyślnego.

Pula połączeń

Zazwyczaj nie jest wymagane do wywołania Connect metoda ServerConnection obiektu.SMO będzie automatycznie nawiązać połączenie, gdy wymagane i Zwolnij połączenie z puli połączeń, po zakończeniu operacji.Gdy Connect wywoływana jest metoda, połączenie nie jest zwalniane do puli.Jawne wywołanie Disconnect Metoda jest wymagany do zwolnienia połączenia z puli.Ponadto żądanie połączenia z puli przez ustawienie NonPooledConnection Właściwość ServerConnection obiektu.

Aplikacje wielowątkowe

W przypadku aplikacji wielowątkowych, oddzielne ServerConnection obiektu powinny być stosowane w każdym wątek.

Nawiązywanie połączenia z wystąpieniem programu SQL Server dla RMO

Obiekty zarządzania replikacja (RMO) używa nieco inne metoda SMO do połączenia z serwerem replikacja.

RMO obiekty programowania wymagają połączenia z wystąpienie SQL Server dokonane za pomocą ServerConnection implementowane przez obiekt Microsoft.SqlServer.Management.Common obszaru nazw.To połączenie z serwerem jest dokonane niezależnie od obiektu programowania RMO.Jest następnie podczas tworzenia wystąpienie lub przypisania jest przekazywana do obiektu RMO ConnectionContext właściwość obiektu.W ten sposób RMO programowania obiektu i wystąpienia obiektów połączenia można tworzyć i zarządzane oddzielnie i obiektu pojedynczego połączenia mogą być ponownie użyte RMO wiele obiektów programowania.Dla połączeń z serwerem replikacja obowiązują następujące reguły:

  • Wszystkie właściwości połączenia są zdefiniowane dla określonego ServerConnection obiektu.

  • Każde połączenie z wystąpienie SQL Server musi mieć własny ServerConnection obiektu.

  • Wszystkie informacje uwierzytelnianie do nawiązania połączenia i pomyślnie zalogować się do serwera jest dostarczany w ServerConnection obiektu.

  • Domyślnie połączenia są realizowane przy użyciu uwierzytelniania systemu Microsoft Windows.Aby użyć SQL Server uwierzytelniania, LoginSecure musi być zestaw FALSE i Login i Password musi być zestaw do prawidłowego SQL Server logowania i hasło.Poświadczenia zabezpieczeń musi zawsze być przechowywane obsługiwane bezpiecznie i dostarczane przy uruchomieniu czas to możliwe.

  • Connect Metoda musi zostać wywołana przed przekazaniem połączenia z dowolnym RMO programowania obiektu.

Przykłady

Aby używać dostarczonych przykładów kodu źródłowego, należy wybrać środowisko, szablon oraz język programowania, które będą używane do tworzenia aplikacji. Aby uzyskać więcej informacji, zobacz temat „Jak utworzyć projekt SMO języka Visual Basic w programie Visual Studio .NET” lub „Jak utworzyć projekt SMO języka Visual C# w programie Visual Studio .NET” w dokumentacji SQL Server — książki online.

Podłączanie do lokalnego wystąpienia programu SQL Server przy użyciu uwierzytelniania systemu Windows w języku Visual Basic

Podłączanie do lokalnego wystąpienie SQL Server nie wymaga dużej ilości kodu.Zamiast tego wykorzystuje on domyślne ustawienia metoda uwierzytelnianie i serwer.Pierwsza operacja, która wymaga pobranie danych spowoduje połączenie ma być utworzony.

W tym przykładzie jest Visual Basic .Kod netto, który łączy się z lokalnego wystąpienie SQL Server za pomocą uwierzytelniania systemu Windows.

'Connect to the local, default instance of SQL Server.
Dim srv As Server
srv = New Server
'The connection is established when a property is requested.
Console.WriteLine(srv.Information.Version)
'The connection is automatically disconnected when the Server variable goes out of scope.

Podłączanie do lokalnego wystąpienia programu SQL Server przy użyciu uwierzytelniania systemu Windows w środowisku Visual C#

Podłączanie do lokalnego wystąpienie SQL Server nie wymaga dużej ilości kodu.Zamiast tego wykorzystuje on domyślne ustawienia metoda uwierzytelnianie i serwer.Pierwsza operacja, która wymaga pobranie danych spowoduje połączenie ma być utworzony.

W tym przykładzie jest Visual C#.Kod netto, który łączy się z lokalnego wystąpienie SQL Server za pomocą uwierzytelniania systemu Windows.

{ 
//Connect to the local, default instance of SQL Server. 
Server srv; 
srv = new Server(); 
//The connection is established when a property is requested. 
Console.WriteLine(srv.Information.Version); 
} 
//The connection is automatically disconnected when the Server variable goes out of scope.

Nawiązywanie zdalnego wystąpienia programu SQL Server przy użyciu uwierzytelniania systemu Windows w języku Visual Basic

Po podłączeniu do wystąpienie SQL Server za pomocą uwierzytelnianie systemu Windows, nie trzeba określić typ uwierzytelnianie.Uwierzytelnianie systemu Windows jest domyślnie.

W tym przykładzie jest Visual Basic .NET kodu łączącego zdalnego wystąpienie SQL Server za pomocą uwierzytelniania systemu Windows.Zmienna typu ciąg strServer zawiera nazwę zdalnego wystąpienie.

'Connect to a remote instance of SQL Server.
Dim srv As Server
'The strServer string variable contains the name of a remote instance of SQL Server.
srv = New Server(strServer)
'The actual connection is made when a property is retrieved. 
Console.WriteLine(srv.Information.Version)
'The connection is automatically disconnected when the Server variable goes out of scope.

Nawiązywanie zdalnego wystąpienia programu SQL Server przy użyciu uwierzytelniania systemu Windows w środowisku Visual C#

Po podłączeniu do wystąpienie SQL Server za pomocą uwierzytelnianie systemu Windows, nie trzeba określić typ uwierzytelnianie.Uwierzytelnianie systemu Windows jest domyślnie.

W tym przykładzie jest Visual C#.NET kodu łączącego zdalnego wystąpienie SQL Server za pomocą uwierzytelniania systemu Windows.Zmienna typu ciąg strServer zawiera nazwę zdalnego wystąpienie.

{ 
//Connect to a remote instance of SQL Server. 
Server srv; 
//The strServer string variable contains the name of a remote instance of SQL Server. 
srv = new Server(strServer); 
//The actual connection is made when a property is retrieved. 
Console.WriteLine(srv.Information.Version); 
} 
//The connection is automatically disconnected when the Server variable goes out of scope.

Połączenie z wystąpieniem programu SQL Server przy użyciu uwierzytelniania programu SQL Server w języku Visual Basic

Po podłączeniu do wystąpienie SQL Server za pomocą SQL Server uwierzytelnianie, należy określić typ uwierzytelnianie. Ten przykład demonstruje deklarowanie alternatywne metoda ServerConnection zmienna obiektu, która umożliwia informacje połączenia, które mają nastąpić.

Przykład jest Visual Basic .NET kod, który demonstruje sposób nawiązywania połączenia ze zdalnym i vPassword zawierają logowania i hasło.

' compile with: 
' /r:Microsoft.SqlServer.Smo.dll
' /r:Microsoft.SqlServer.ConnectionInfo.dll
' /r:Microsoft.SqlServer.Management.Sdk.Sfc.dll 

Imports Microsoft.SqlServer.Management.Smo
Imports Microsoft.SqlServer.Management.Common

Public Class A
   Public Shared Sub Main()
      Dim sqlServerLogin As [String] = "user_id"
      Dim password As [String] = "pwd"
      Dim instanceName As [String] = "instance_name"
      Dim remoteSvrName As [String] = "remote_server_name"


      ' Connecting to an instance of SQL Server using SQL Server Authentication
      Dim srv1 As New Server()   ' connects to default instance
      srv1.ConnectionContext.LoginSecure = False   ' set to true for Windows Authentication
      srv1.ConnectionContext.Login = sqlServerLogin
      srv1.ConnectionContext.Password = password
      Console.WriteLine(srv1.Information.Version)   ' connection is established

      ' Connecting to a named instance of SQL Server with SQL Server Authentication using ServerConnection
      Dim srvConn As New ServerConnection()
      srvConn.ServerInstance = ".\" & instanceName   ' connects to named instance
      srvConn.LoginSecure = False   ' set to true for Windows Authentication
      srvConn.Login = sqlServerLogin
      srvConn.Password = password
      Dim srv2 As New Server(srvConn)
      Console.WriteLine(srv2.Information.Version)   ' connection is established

      ' For remote connection, remote server name / ServerInstance needs to be specified
      Dim srvConn2 As New ServerConnection(remoteSvrName)
      srvConn2.LoginSecure = False
      srvConn2.Login = sqlServerLogin
      srvConn2.Password = password
      Dim srv3 As New Server(srvConn2)
      Console.WriteLine(srv3.Information.Version)   ' connection is established
   End Sub
End Class

Nawiązywanie połączenia z wystąpieniem programu SQL Server przy użyciu uwierzytelniania programu SQL Server w środowisku Visual C#

Po podłączeniu do wystąpienie SQL Server za pomocą SQL Server uwierzytelnianie, należy określić typ uwierzytelnianie. Ten przykład demonstruje deklarowanie alternatywne metoda ServerConnection zmienna obiektu, która umożliwia informacje połączenia, które mają nastąpić.

Przykład jest Visual C#.NET kod, który demonstruje sposób nawiązywania połączenia ze zdalnym i vPassword zawierają logowania i hasło.

// compile with: 
// /r:Microsoft.SqlServer.Smo.dll
// /r:Microsoft.SqlServer.ConnectionInfo.dll
// /r:Microsoft.SqlServer.Management.Sdk.Sfc.dll 

using System;
using Microsoft.SqlServer.Management.Smo;
using Microsoft.SqlServer.Management.Common;

public class A {
   public static void Main() { 
      String sqlServerLogin = "user_id";
      String password = "pwd";
      String instanceName = "instance_name";
      String remoteSvrName = "remote_server_name";

      // Connecting to an instance of SQL Server using SQL Server Authentication
      Server srv1 = new Server();   // connects to default instance
      srv1.ConnectionContext.LoginSecure = false;   // set to true for Windows Authentication
      srv1.ConnectionContext.Login = sqlServerLogin;
      srv1.ConnectionContext.Password = password;
      Console.WriteLine(srv1.Information.Version);   // connection is established

      // Connecting to a named instance of SQL Server with SQL Server Authentication using ServerConnection
      ServerConnection srvConn = new ServerConnection();
      srvConn.ServerInstance = @".\" + instanceName;   // connects to named instance
      srvConn.LoginSecure = false;   // set to true for Windows Authentication
      srvConn.Login = sqlServerLogin;
      srvConn.Password = password;
      Server srv2 = new Server(srvConn);
      Console.WriteLine(srv2.Information.Version);   // connection is established


      // For remote connection, remote server name / ServerInstance needs to be specified
      ServerConnection srvConn2 = new ServerConnection(remoteSvrName);
      srvConn2.LoginSecure = false;
      srvConn2.Login = sqlServerLogin;
      srvConn2.Password = password;
      Server srv3 = new Server(srvConn2);
      Console.WriteLine(srv3.Information.Version);   // connection is established
   }
}

Zobacz także

Odwołanie