This section describes how to create a job with steps and a schedule.
The code example creates a job with steps and a schedule, and then informs an operator.
Creating a job with steps and a schedule
- Start Visual Studio 2005. 
- From the File menu, select New Project. The New Project dialog box appears. 
- In the Project Types pane, select Visual Basic. In the Templates pane, select Console Application. 
- (Optional) In the Name box, type the name of the new application. 
- Click OK to load the Visual Basic console application template. 
- On the Project menu, select Add Reference item. The Add Reference dialog box appears. Select Browse and locate the SMO assemblies in the C:\Program Files\Microsoft SQL Server\90\SDK\Assemblies folder. Select the following files: - Microsoft.SqlServer.ConnectionInfo.dll - Microsoft.SqlServer.Smo.dll - Microsoft.SqlServer.SqlEnum.dll - Microsoft.SqlServer.SmoEnum.dll 
- On the View menu, click Code.-Or-Select the Module1.vb window to display the code window. 
- In the code, before any declarations, type the following Imports statements to qualify the types in the SMO namespace: - Imports Microsoft.SqlServer.Management.Smo Imports Microsoft.SqlServer.Management.Common Imports Microsoft.SqlServer.Management.Smo.Agent
- Insert the code that follows this procedure into the main program. 
- Run and build the application. 
示例
'Connect to the local, default instance of SQL Server.
Dim srv As Server
srv = New Server
'Define an Operator object variable by supplying the Agent (parent JobServer object) and the name in the constructor.
Dim op As [Operator]
op = New [Operator](srv.JobServer, "Test_Operator")
'Set the Net send address.
op.NetSendAddress = "Network1_PC"
'Create the operator on the instance of SQL Agent.
op.Create()
'Define a Job object variable by supplying the Agent and the name arguments in the constructor and setting properties.
Dim jb As Job
jb = New Job(srv.JobServer, "Test_Job")
'Specify which operator to inform and the completion action.
jb.OperatorToNetSend = "Test_Operator"
jb.NetSendLevel = CompletionAction.Always
'Create the job on the instance of SQL Agent. 
jb.Create()
'Define a JobStep object variable by supplying the parent job and name arguments in the constructor.
Dim jbstp As JobStep
jbstp = New JobStep(jb, "Test_Job_Step")
jbstp.Command = "Test_StoredProc"
jbstp.OnSuccessAction = StepCompletionAction.QuitWithSuccess
jbstp.OnFailAction = StepCompletionAction.QuitWithFailure
'Create the job step on the instance of SQL Agent.
jbstp.Create()
'Define a JobSchedule object variable by supplying the parent job and name arguments in the constructor. 
Dim jbsch As JobSchedule
jbsch = New JobSchedule(jb, "Test_Job_Schedule")
'Set properties to define the schedule frequency, and duration.
jbsch.FrequencyTypes = FrequencyTypes.Daily
jbsch.FrequencySubDayTypes = FrequencySubDayTypes.Minute
jbsch.FrequencySubDayInterval = 30
Dim ts1 As TimeSpan
ts1 = New TimeSpan(9, 0, 0)
jbsch.ActiveStartTimeOfDay = ts1
Dim ts2 As TimeSpan
ts2 = New TimeSpan(17, 0, 0)
jbsch.ActiveEndTimeOfDay = ts2
jbsch.FrequencyInterval = 1
Dim d As Date
d = New Date(2003, 1, 1)
jbsch.ActiveStartDate = d
'Create the job schedule on the instance of SQL Agent.
jbsch.Create()
请参阅
概念
Scheduling Automatic Administrative Tasks in SQL Server Agent