Thursday 29 November 2012

sql JOB create and job Schedule

create sql server Job by programming

in this program we fetch data from excel file every 10 seconds in to sql server table


USE [msdb]
GO

/****** Object:  Job [indiandata]    Script Date: 11/30/2012 12:38:02 ******/
BEGIN TRANSACTION
DECLARE @ReturnCode INT
SELECT @ReturnCode = 0
/****** Object:  JobCategory [[Uncategorized (Local)]]]    Script Date: 11/30/2012 12:38:02 ******/
IF NOT EXISTS (SELECT name FROM msdb.dbo.syscategories WHERE name=N'[Uncategorized (Local)]' AND category_class=1)
BEGIN
EXEC @ReturnCode = msdb.dbo.sp_add_category @class=N'JOB', @type=N'LOCAL', @name=N'[Uncategorized (Local)]'
IF (@@ERROR <> 0 OR @ReturnCode <> 0) GOTO QuitWithRollback

END

DECLARE @jobId BINARY(16)
EXEC @ReturnCode =  msdb.dbo.sp_add_job @job_name=N'indiandata',
            @enabled=1,
            @notify_level_eventlog=0,
            @notify_level_email=0,
            @notify_level_netsend=0,
            @notify_level_page=0,
            @delete_level=0,
            @description=N'indian market data save in to a table product det from excel file',
            @category_name=N'[Uncategorized (Local)]',
            @owner_login_name=N'SOFTDREA-E08D10\Santrupt Kr. Mallick', @job_id = @jobId OUTPUT
IF (@@ERROR <> 0 OR @ReturnCode <> 0) GOTO QuitWithRollback
/****** Object:  Step [select data]    Script Date: 11/30/2012 12:38:02 ******/
EXEC @ReturnCode = msdb.dbo.sp_add_jobstep @job_id=@jobId, @step_name=N'select data',
            @step_id=1,
            @cmdexec_success_code=0,
            @on_success_action=1,
            @on_success_step_id=0,
            @on_fail_action=2,
            @on_fail_step_id=0,
            @retry_attempts=0,
            @retry_interval=0,
            @os_run_priority=0, @subsystem=N'TSQL',
            @command=N' insert into product_det
  select * from OPENDATASOURCE(''Microsoft.Jet.OLEDB.4.0'',
   ''Data Source=C:\ODINNSEBSEMCXNCDEX\Client\Arbitrage.xls;Extended Properties=Excel 8.0'')
   ...Sheet1$ where Exchange is not null',
            @database_name=N'TMP',
            @flags=0
IF (@@ERROR <> 0 OR @ReturnCode <> 0) GOTO QuitWithRollback
EXEC @ReturnCode = msdb.dbo.sp_update_job @job_id = @jobId, @start_step_id = 1
IF (@@ERROR <> 0 OR @ReturnCode <> 0) GOTO QuitWithRollback
EXEC @ReturnCode = msdb.dbo.sp_add_jobschedule @job_id=@jobId, @name=N'datatime diffrence',
            @enabled=1,
            @freq_type=8,
            @freq_interval=63,
            @freq_subday_type=2,
            @freq_subday_interval=10,
            @freq_relative_interval=0,
            @freq_recurrence_factor=1,
            @active_start_date=20121130,
            @active_end_date=99991231,
            @active_start_time=100000,
            @active_end_time=235959,
            @schedule_uid=N'791648ae-fc29-4ac7-9ac8-0fab8622dbc8'
IF (@@ERROR <> 0 OR @ReturnCode <> 0) GOTO QuitWithRollback
EXEC @ReturnCode = msdb.dbo.sp_add_jobserver @job_id = @jobId, @server_name = N'(local)'
IF (@@ERROR <> 0 OR @ReturnCode <> 0) GOTO QuitWithRollback
COMMIT TRANSACTION
GOTO EndSave
QuitWithRollback:
    IF (@@TRANCOUNT > 0) ROLLBACK TRANSACTION
EndSave:

GO



No comments:

Post a Comment