ServerConnection 类

The ServerConnection object represents a connection to a server.

继承层次结构

System. . :: . .Object
  Microsoft.SqlServer.Management.Common. . :: . .ConnectionSettings
    Microsoft.SqlServer.Management.Common. . :: . .ConnectionManager
      Microsoft.SqlServer.Management.Common..::..ServerConnection

命名空间:  Microsoft.SqlServer.Management.Common
程序集:  Microsoft.SqlServer.ConnectionInfo(在 Microsoft.SqlServer.ConnectionInfo.dll 中)

语法

声明
Public NotInheritable Class ServerConnection _
    Inherits ConnectionManager _
    Implements ISfcConnection
用法
Dim instance As ServerConnection
public sealed class ServerConnection : ConnectionManager, 
    ISfcConnection
public ref class ServerConnection sealed : public ConnectionManager, 
    ISfcConnection
[<SealedAttribute>]
type ServerConnection =  
    class
        inherit ConnectionManager
        interface ISfcConnection
    end
public final class ServerConnection extends ConnectionManager implements ISfcConnection

ServerConnection 类型公开以下成员。

构造函数

  名称 说明
公共方法 ServerConnection() () () () Initializes a new instance of the ServerConnection class.
公共方法 ServerConnection(SqlConnection) Initializes a new instance of the ServerConnection class with the specified connection parameters.
公共方法 ServerConnection(String) Initializes a new instance of the ServerConnection class with the specified server instance.
公共方法 ServerConnection(SqlConnectionInfo) Initializes a new instance of the ServerConnection class with the specified connection information.
公共方法 ServerConnection(String, String, SecureString) Initializes a new instance of the ServerConnection class with the specified server instance and logon credentials.
公共方法 ServerConnection(String, String, String) Initializes a new instance of the ServerConnection class with the specified server instance and logon credentials.

页首

属性

  名称 说明
公共属性 ApplicationName Gets or sets the name of the application that has established the connection with the server. (从 ConnectionSettings 继承。)
公共属性 AutoDisconnectMode Gets or sets the automatic disconnection mode of the referenced connection to the instance of SQL Server. (从 ConnectionManager 继承。)
公共属性 BatchSeparator Gets or sets the string value used to separate batches in the referenced connection.
公共属性 CapturedSql Gets the Transact-SQL statements that are captured when the connection is running in capture mode. (从 ConnectionManager 继承。)
公共属性 ConnectAsUser Gets or sets the Boolean property value that specifies whether the connection is established using impersonation. (从 ConnectionSettings 继承。)
公共属性 ConnectAsUserName Gets or sets the name of the user when connecting using impersonation. (从 ConnectionSettings 继承。)
公共属性 ConnectAsUserPassword Gets or sets the password for the user when connecting using impersonation. (从 ConnectionSettings 继承。)
公共属性 ConnectionString Gets or sets the connection string used to establish a connection with a specified data source. (从 ConnectionSettings 继承。)
公共属性 ConnectionType
公共属性 ConnectTimeout Gets or sets the connection time-out period in seconds. (从 ConnectionSettings 继承。)
公共属性 DatabaseName Gets or sets the database required by the connection. (从 ConnectionSettings 继承。)
公共属性 EncryptConnection Gets or sets the Boolean property value that specifies whether the connection is encrypted. (从 ConnectionSettings 继承。)
公共属性 FixedServerRoles Gets the fixed server role associated with the referenced connection.
公共属性 InUse Gets or sets the Boolean property value that specifies whether the connection is being used. (从 ConnectionManager 继承。)
公共属性 IsOpen Gets the Boolean property value that specifies whether the connection is currently open. (从 ConnectionManager 继承。)
公共属性 LockTimeout Gets or sets the time in seconds required for the connection to time out when the current transaction is locked. (从 ConnectionManager 继承。)
公共属性 Login Gets or sets the logon required to establish a connection with the instance of the server. (从 ConnectionSettings 继承。)
公共属性 LoginSecure Gets or sets the Boolean property that specifies whether the connection is established to the server by using Windows Authentication or SQL Server Authentication. (从 ConnectionSettings 继承。)
公共属性 MaxPoolSize Gets or sets the maximum number of connections in a connection pool that the specified connection accepts when establishing a connection with a server. (从 ConnectionSettings 继承。)
公共属性 MinPoolSize Gets or sets the minimum number of connections in a connection pool that the specified connection accepts when establishing a connection with a server. (从 ConnectionSettings 继承。)
公共属性 MultipleActiveResultSets Gets or sets the Boolean property value that specifies whether more than one active result set is permitted. (从 ConnectionSettings 继承。)
公共属性 NetworkProtocol Gets or sets the network protocol used to establish the connection to the server. (从 ConnectionSettings 继承。)
公共属性 NonPooledConnection Gets or sets the Boolean property value that specifies whether the connection may be pooled or nonpooled. (从 ConnectionSettings 继承。)
公共属性 PacketSize Gets or sets the packets of data sent between the client and the server over the network in bytes. (从 ConnectionSettings 继承。)
公共属性静态成员 ParameterizationMode
公共属性 Password Gets or sets the password used with the logon to establish a connection with the server when SQL Server Authentication is used. (从 ConnectionSettings 继承。)
公共属性 PooledConnectionLifetime Gets or sets the lifetime of the pooled connection. (从 ConnectionSettings 继承。)
公共属性 ProcessID Gets the ID value that uniquely identifies the process associated with the referenced connection to the server.
公共属性 SecureConnectionString Gets or sets an encrypted version of the connection string. (从 ConnectionSettings 继承。)
公共属性 SecurePassword Gets or sets the secure password used with the logon to establish a connection with the server when SQL Server Authentication is used. (从 ConnectionSettings 继承。)
公共属性 ServerInstance Gets or sets the name of the server. (从 ConnectionSettings 继承。)
公共属性 ServerVersion Gets the version of the connected instance of SQL Server. (从 ConnectionManager 继承。)
公共属性 SqlConnectionObject Gets the connection object. (从 ConnectionManager 继承。)
公共属性 SqlExecutionModes Gets or sets the execution mode associated with the referenced connection to the server.
公共属性 StatementTimeout Gets or sets the number of seconds a statement is given to run before failing with a time-out error.
公共属性 TransactionDepth Gets the current transaction depth for the referenced connection.
公共属性 TrueLogin Gets the current logon record name used by the referenced connection.
公共属性 TrueName Gets the name of the server.
公共属性静态成员 UseMode
公共属性 UserProfile Gets the user profile associated with the referenced connection.
公共属性 WorkstationId Gets or sets the ID value that uniquely identifies the workstation. (从 ConnectionSettings 继承。)

页首

方法

  名称 说明
公共方法 BeginTransaction Starts a transaction on the referenced connection.
公共方法 Cancel Cancels the connection.
公共方法 ChangePassword(SecureString) Changes the login password that is used with standard authentication.
公共方法 ChangePassword(String) Changes the logon password that is used with standard authentication.
受保护方法 CheckServerVersion Checks the version of the target instance of SQL Server. (从 ConnectionManager 继承。)
公共方法 CommitTransaction Commits the current transaction on the referenced connection.
公共方法 Connect Connects to the instance of SQL Server. (从 ConnectionManager 继承。)
公共方法 Copy Returns a copy of the ServerConnection object.
公共方法 Disconnect Disconnects from the instance of SQL Server. (从 ConnectionManager 继承。)
公共方法 Equals (从 Object 继承。)
公共方法 ExecuteNonQuery(StringCollection) Executes a batch of statements that do not return a result set.
公共方法 ExecuteNonQuery(String) Executes a statement that does not return a result set.
公共方法 ExecuteNonQuery(StringCollection, ExecutionTypes) Executes a batch of statements with the specified execution options that does not return a result set.
公共方法 ExecuteNonQuery(String, ExecutionTypes) Executes a statement with the specified execution options that does not return a result set.
公共方法 ExecuteReader Executes Transact-SQL statements that return one or multiple result sets.
公共方法 ExecuteScalar(StringCollection) Executes a batch of Transact-SQL statements and returns the first column of the first row as an object value.
公共方法 ExecuteScalar(String) Executes a Transact-SQL statement and returns the first column of the first row as an object value.
公共方法 ExecuteWithResults(StringCollection) Executes a batch of Transact-SQL statements that return multiple result sets.
公共方法 ExecuteWithResults(String) Executes a Transact-SQL statement that returns a result set.
受保护方法 Finalize (从 Object 继承。)
公共方法 GetHashCode (从 Object 继承。)
公共方法 GetType (从 Object 继承。)
公共方法 IsInFixedServerRole Tests whether the logon associated with the referenced connection is a member of the specified fixed server role.
受保护方法 MemberwiseClone (从 Object 继承。)
公共方法静态成员 NormalizeQuery(String)
公共方法静态成员 NormalizeQuery(String, Boolean)
公共方法 RollBackTransaction Rolls back the current transaction.
受保护方法 ThrowIfPropertyNotSet(String, String) Throws an exception if the specified connection property is null or empty. (从 ConnectionSettings 继承。)
受保护方法 ThrowIfPropertyNotSet(String, String, Boolean) Throws an exception if the specified connection property is null or, optionally, empty. (从 ConnectionSettings 继承。)
公共方法 ToString Returns the referenced object name as a string. (从 ConnectionSettings 继承。)

页首

事件

  名称 说明
公共事件 InfoMessage The event that occurs when the instance of SQL Server generates an informational message. (从 ConnectionManager 继承。)
公共事件 RemoteLoginFailed This event occurs when a remote login fails to connect to the instance of SQL Server. (从 ConnectionManager 继承。)
公共事件 ServerMessage The event that occurs when SQL Server returns a warning or informational message on the current connection. (从 ConnectionManager 继承。)
公共事件 StateChange The event that occurs when the instance of SQL Server changes state. (从 ConnectionManager 继承。)
公共事件 StatementExecuted The event that occurs when the instance of SQL Server executes a statement on the current connection. (从 ConnectionManager 继承。)

页首

注释

The ServerConnection class is served by the Server class and replication classes such as the ReplicationServer class.

Typically, you don't have to declare an instance of the ServerConnection object because it is created automatically with the Server object. Declare a ServerConnection object variable if you want to store the connection settings for re-use. The ConnectionContext property of the Server object points to a ServerConnection object. The ServerConnection object contains properties that relate to the connection between the Server object and the instance of SQL Server. You can use it to view or modify certain aspects of the connection, such as the process ID, processing transactions, the authentication mode, execution mode, and even to run Transact-SQL commands directly.

By using the ServerConnection object, you can do the following:

  • Run Transact-SQL statements directly over the connection to the instance of SQL Server.

  • Change the connection settings, such as the authentication method.

  • Begin, commit and roll back transactions.

  • Capture the Transact-SQL statements generated by the SMO application.

示例

For another example of this method with the Database object, see [M:Microsoft.SqlServer.Management.Smo.Database.ExecuteNonQuery(System.String].

'Declare a ServerConnection object variable to specify SQL authentication, login and password.
Dim conn As New ServerConnection
conn.LoginSecure = False
conn.Login = vlogin
conn.Password = vpassword
'Connect to the local, default instance of SQL Server.
Dim srv As Server
srv = New Server(conn)
'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.

线程安全

此类型的任何公共 static(在 Visual Basic 中为 Shared) 成员都是线程安全的。不保证所有实例成员都是线程安全的。