Server Class

The Server object represents an instance of SQL Server.

Namespace:  Microsoft.SqlServer.Management.Smo
Assembly:  Microsoft.SqlServer.Smo (in Microsoft.SqlServer.Smo.dll)

Syntax

'Declaration
<PhysicalFacetAttribute> _
<RootFacetAttribute(GetType(Server))> _
<EvaluationModeAttribute(AutomatedPolicyEvaluationMode.CheckOnSchedule)> _
Public NotInheritable Class Server _
    Inherits SqlSmoObject _
    Implements IAlterable, IScriptable, IServerSettings, IServerInformation,  _
    IDmfFacet, IAlienRoot
'Usage
Dim instance As Server
[PhysicalFacetAttribute]
[RootFacetAttribute(typeof(Server))]
[EvaluationModeAttribute(AutomatedPolicyEvaluationMode.CheckOnSchedule)]
public sealed class Server : SqlSmoObject, 
    IAlterable, IScriptable, IServerSettings, IServerInformation, IDmfFacet, 
    IAlienRoot
[PhysicalFacetAttribute]
[RootFacetAttribute(typeof(Server))]
[EvaluationModeAttribute(AutomatedPolicyEvaluationMode::CheckOnSchedule)]
public ref class Server sealed : public SqlSmoObject, 
    IAlterable, IScriptable, IServerSettings, IServerInformation, IDmfFacet, 
    IAlienRoot
[<SealedAttribute>]
[<PhysicalFacetAttribute>]
[<RootFacetAttribute(typeof(Server))>]
[<EvaluationModeAttribute(AutomatedPolicyEvaluationMode.CheckOnSchedule)>]
type Server =  
    class
        inherit SqlSmoObject
        interface IAlterable
        interface IScriptable
        interface IServerSettings
        interface IServerInformation
        interface IDmfFacet
        interface IAlienRoot
    end
public final class Server extends SqlSmoObject implements IAlterable, IScriptable, IServerSettings, IServerInformation, IDmfFacet, IAlienRoot

Remarks

The Server class represents an instance of SQL Server. In SMO programming, the Server object determines the connection to a physical SQL Server installation. The Server class is the highest level in the SMO instance object hierarchy. When a Server object variable is created, it establishes a connection to an instance of SQL Server. If you do not specify the name in the Server class constructor, the connection is always made with the local, default instance of SQL Server.

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

  • Connect to an instance of SQL Server.

  • Modify the connection settings.

  • Run Transact-SQL statements directly.

  • Capture Transact-SQL output from the SMO program.

  • Manage transactions.

  • View operating system information.

  • Modify and view SQL Server settings, information, and user options.

  • Modify and view SQL Server configuration options.

  • Register the instance of SQL Server in the Active Directory directory service.

  • Subscribe to and handle SQL Server events.

  • Reference databases, endpoints, credentials, logins, linked servers, system messages, DDL triggers, system data types, and user-defined messages.

  • Regenerate the service master key.

  • Detach and attach databases.

  • Stop processes or databases.

  • Grant, deny, or revoke permissions on the database.

  • Enumerate information about the server.

  • Read the error log.

  • Remove the backup history.

  • Get and set the default initialization fields for specified types.

  • Create endpoints, such as database mirroring endpoint.

To get Server object properties, users can be a member of the public fixed server role.

To set Server object properties, users must be a member of the sysadmin fixed server role.

Thread Safety

Any public static (Shared in Microsoft Visual Basic) members of this type are safe for multithreaded operations. Any instance members are not guaranteed to be thread safe.

Inheritance Hierarchy

System.Object
  Microsoft.SqlServer.Management.Smo.SmoObjectBase
    Microsoft.SqlServer.Management.Smo.SqlSmoObject
      Microsoft.SqlServer.Management.Smo.Server

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.