Job Class
The Job class represents a Microsoft SQL Server Agent job.
Inheritance Hierarchy
System.Object
Microsoft.SqlServer.Management.Smo.SmoObjectBase
Microsoft.SqlServer.Management.Smo.SqlSmoObject
Microsoft.SqlServer.Management.Smo.NamedSmoObject
Microsoft.SqlServer.Management.Smo.Agent.AgentObjectBase
Microsoft.SqlServer.Management.Smo.Agent.Job
Namespace: Microsoft.SqlServer.Management.Smo.Agent
Assembly: Microsoft.SqlServer.Smo (in Microsoft.SqlServer.Smo.dll)
Syntax
'Declaration
Public NotInheritable Class Job _
Inherits AgentObjectBase _
Implements IAlterable, ICreatable, IDroppable, IRenamable, _
IScriptable
'Usage
Dim instance As Job
public sealed class Job : AgentObjectBase, IAlterable,
ICreatable, IDroppable, IRenamable, IScriptable
public ref class Job sealed : public AgentObjectBase,
IAlterable, ICreatable, IDroppable, IRenamable, IScriptable
[<SealedAttribute>]
type Job =
class
inherit AgentObjectBase
interface IAlterable
interface ICreatable
interface IDroppable
interface IRenamable
interface IScriptable
end
public final class Job extends AgentObjectBase implements IAlterable, ICreatable, IDroppable, IRenamable, IScriptable
The Job type exposes the following members.
Constructors
Name | Description | |
---|---|---|
Job() | Initializes a new instance of the Job class. | |
Job(JobServer, String) | Initializes a new instance of the Job class on the specified instance of Microsoft SQL Server Agent and with the specified name. | |
Job(JobServer, String, Int32) | Initializes a new instance of the Job class on the specified instance of SQL Server Agent and with the specified name and category |
Top
Properties
Name | Description | |
---|---|---|
Category | Gets or sets the category to which the job belongs. | |
CategoryID | Gets the ID value that uniquely identifies the job category. | |
CategoryType | Gets or sets the type of category, with respect to local or multiserver jobs. | |
CurrentRunRetryAttempt | Gets the number of times Microsoft SQL Server Agent has attempted to run the job unsuccessfully. | |
CurrentRunStatus | Gets the current execution status of the job. | |
CurrentRunStep | Gets information about the job step that is currently running. | |
DateCreated | Gets the date and time when the job was created. | |
DateLastModified | Gets the date and time when the job was last modified. | |
DeleteLevel | Gets or sets the completion action that determines whether to delete the job definition when the job finishes execution. | |
Description | Gets or sets the textual description of the job. | |
EmailLevel | Gets or sets the completion action that determines whether to send an e-mail notification to an operator when the job finishes execution. | |
EventLogLevel | Gets or sets the completion action that determines whether to generate an operating system event log entry when the job finishes execution. | |
HasSchedule | Gets the Boolean property value that specifies whether the job has at least one schedule. | |
HasServer | Gets the Boolean property value that specifies whether the job has a target server assigned for multiple-server operations. | |
HasStep | Gets the Boolean property value that specifies whether the job has at least one job step. | |
IsEnabled | Gets or sets the Boolean property value that specifies whether the job is enabled. | |
JobID | Gets the job ID value. | |
JobSchedules | Gets a collection of JobSchedule objects that represent the schedules assigned to the job. | |
JobSteps | Gets a collection of JobStep objects that represent the job steps defined for the job. | |
JobType | Gets the job type, which specifies whether the job is local or multiserver. | |
LastRunDate | Gets the date and time when the job was last run. | |
LastRunOutcome | Gets the result of the job from the last time it completed execution. | |
Name | Gets or sets the name of the Job. (Overrides NamedSmoObject.Name.) | |
NetSendLevel | Gets or sets the completion action that determines whether to net-send a notification to an operator when the job finishes execution. | |
NextRunDate | Gets the date and time when the job is next scheduled to run. | |
NextRunScheduleID | Gets the ID value of the schedule that is responsible for the next execution of the job. | |
OperatorToEmail | Gets or sets the operator that receives notification by e-mail when the job finishes execution. | |
OperatorToNetSend | Gets or sets the operator that receives a net-send notification when the job finishes execution. | |
OperatorToPage | Gets or sets the operator that receives a pager notification when the job finishes execution. | |
OriginatingServer | Gets the name of the server that is acting as the master server in a multiserver job. | |
OwnerLoginName | Gets or sets the owner of the job. | |
PageLevel | Gets or sets the completion action that determines whether to send a pager notification to an operator when the job finishes execution. | |
Parent | Gets or sets the JobServer object that is the parent of the Job object. | |
Properties | Gets a collection of Property objects that represent the object properties. (Inherited from SqlSmoObject.) | |
StartStepID | Gets or sets the ID value of the first job step in the sequence to be executed. | |
State | Gets the state of the referenced object. (Inherited from SmoObjectBase.) | |
Urn | Gets the Uniform Resource Name (URN) address value that uniquely identifies the object. (Inherited from SqlSmoObject.) | |
UserData | Gets or sets user-defined data associated with the referenced object. (Inherited from SmoObjectBase.) | |
VersionNumber | Gets a system-maintained value that is incremented every time the job is modified. |
Top
Methods
Name | Description | |
---|---|---|
AddSharedSchedule | Adds a shared schedule to the Microsoft SQL Server Agent job. | |
Alter | Updates any Job object property changes on an instance of Microsoft SQL Server. | |
ApplyToTargetServer | Adds a server to the list of target servers maintained for the referenced Microsoft SQL Server Agent job. | |
ApplyToTargetServerGroup | Adds one or more servers to the list of target servers maintained for the referenced Microsoft SQL Server Agent job. | |
Create | Creates a job on the instance of Microsoft SQL Server as defined by the Job object. | |
DeleteJobStepLogs(DateTime) | Deletes job step log files that are older than the specified date. | |
DeleteJobStepLogs(Int32) | Deletes job step log files that are larger that the specified log ID number. | |
Discover | Discovers a list of type Object. (Inherited from SqlSmoObject.) | |
Drop() | Removes an existing job. | |
Drop(Boolean) | Removes an existing job. | |
EnumAlerts | Enumerates a list of Agent alerts that cause automated execution of the referenced job. | |
EnumHistory() | Enumerates a list of execution history associated with the referenced job. | |
EnumHistory(JobHistoryFilter) | Enumerates a list of execution history associated with the referenced job. | |
EnumJobStepLogs() | Enumerates a list of job step log files for the referenced job. | |
EnumJobStepLogs(Int32) | Enumerates a list of job step log files for the job step with the specified ID value. | |
EnumJobStepLogs(String) | Enumerates a list of job step log files for the job step with the specified name. | |
EnumJobStepsByID | Returns an array of JobStep objects that belong to the referenced job and that are ordered by ID value. | |
EnumTargetServers | Enumerates a list of execution target servers that have been assigned to the referenced job. | |
Equals | (Inherited from Object.) | |
FormatSqlVariant | Formats an object as SqlVariant type. (Inherited from SqlSmoObject.) | |
GetContextDB | Gets the context database that is associated with this object. (Inherited from SqlSmoObject.) | |
GetDBName | Gets the database name that is associated with the object. (Inherited from AgentObjectBase.) | |
GetHashCode | (Inherited from Object.) | |
GetPropValue | Gets a property value of the SqlSmoObject object. (Inherited from SqlSmoObject.) | |
GetPropValueOptional | Gets a property value of the SqlSmoObject object. (Inherited from SqlSmoObject.) | |
GetPropValueOptionalAllowNull | Gets a property value of the SqlSmoObject object. (Inherited from SqlSmoObject.) | |
GetServerObject | Gets the server of the SqlSmoObject object. (Inherited from SqlSmoObject.) | |
GetType | (Inherited from Object.) | |
Initialize() | Initializes the object and forces the properties be loaded. (Inherited from SqlSmoObject.) | |
Initialize(Boolean) | Initializes the object and forces the properties be loaded. (Inherited from SqlSmoObject.) | |
Invoke | Runs the job. | |
IsObjectInitialized | Verifies whether the object has been initialized. (Inherited from SqlSmoObject.) | |
IsObjectInSpace | Verifies whether the object is isolated or connected to the instance of SQL Server. (Inherited from SqlSmoObject.) | |
PurgeHistory | Removes system records maintaining execution history for the referenced job. | |
Refresh | Refreshes the object and retrieves properties when the object is next accessed. (Inherited from SqlSmoObject.) | |
RemoveAllJobSchedules() | Removes all shared and unshared schedules from the job. | |
RemoveAllJobSchedules(Boolean) | Removes all unused schedules from the job. | |
RemoveAllJobSteps | Removes all the job steps associated with the job. | |
RemoveFromTargetServer | Removes an execution target server from the list of target servers maintained for a job. | |
RemoveFromTargetServerGroup | Removes a group of execution target servers from the list of target servers maintained for a job. | |
RemoveSharedSchedule(Int32) | Removes the specified shared schedule from the job. | |
RemoveSharedSchedule(Int32, Boolean) | Removes the specified shared schedule from the job and keeps unused schedules. | |
Rename | Renames the job. | |
Script() | Generates a Transact-SQL script that can be used to re-create the Microsoft SQL Server Agent job. | |
Script(ScriptingOptions) | Generates a Transact-SQL script that can be used to re-create the Microsoft SQL Server Agent job as specified by the scripting options. | |
SetParentImpl | Sets the parent of the SqlSmoObject to the newParent parameter. (Inherited from SqlSmoObject.) | |
Start() | Runs the referenced job. | |
Start(String) | Runs the referenced job starting at the specified job step. | |
Stop | Stops executing the referenced job. | |
ToString | Returns a String that represents the referenced object. (Inherited from SqlSmoObject.) | |
Validate | Validates the state of an object. (Inherited from SmoObjectBase.) |
Top
Events
Name | Description | |
---|---|---|
PropertyChanged | Represents the event that occurs when a property is changed. (Inherited from SqlSmoObject.) | |
PropertyMetadataChanged | Represents the event that occurs when property metadata changes. (Inherited from SqlSmoObject.) |
Top
Explicit Interface Implementations
Name | Description | |
---|---|---|
IAlienObject.Discover | Discovers any dependencies. Do not reference this member directly in your code. It supports the SQL Server infrastructure. (Inherited from SqlSmoObject.) | |
IAlienObject.GetDomainRoot | Returns the root of the domain. (Inherited from SqlSmoObject.) | |
IAlienObject.GetParent | Gets the parent of this object. Do not reference this member directly in your code. It supports the SQL Server infrastructure. (Inherited from SqlSmoObject.) | |
IAlienObject.GetPropertyType | Gets the type of the specified property. (Inherited from SqlSmoObject.) | |
IAlienObject.GetPropertyValue | Gets the value of the specified property. (Inherited from SqlSmoObject.) | |
IAlienObject.GetUrn | Gets the Unified Resource Name (URN) of the object. Do not reference this member directly in your code. It supports the SQL Server infrastructure. (Inherited from SqlSmoObject.) | |
IAlienObject.Resolve | Gets the instance that contains the information about the object from the Unified Resource Name (URN) of the object. (Inherited from SqlSmoObject.) | |
IAlienObject.SetObjectState | Sets the object state to the specified SfcObjectState value. (Inherited from SqlSmoObject.) | |
IAlienObject.SetPropertyValue | Sets the property value. (Inherited from SqlSmoObject.) | |
ISfcPropertyProvider.GetPropertySet | Gets the interface reference to the set of properties of this object. (Inherited from SqlSmoObject.) |
Top
Remarks
To get or set Job object properties, users must be a member of the SQLAgentUserRole database role on the MSDB database, or be the owner of the job, or be a member of the sysadmin fixed server role.
To create a job, users must be a member of the SQLAgentUserRole, SQLAgentReaderRole, and SQLAgentOperatorRole database roles on the MSDB database, or be a member of the sysadmin fixed server role.
To drop a job, users must be a member of the SQLAgentUserRole database role on the MSDB database, or be the owner of the job, or 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.
Examples
Scheduling Automatic Administrative Tasks in SQL Server Agent
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.
See Also
Reference
Microsoft.SqlServer.Management.Smo.Agent Namespace