2

私の問題は、コンピュータに SQL Server 2005 をインストールしたことです。また、ストア プロシージャを自動的に設定するジョブとスケジュールを作成したいと考えています。しかし問題は、最初に SSIS を作成する必要があることです。絶対に設定できません。そして、自分のコンピューターで構成できるのだろうか(ウィンドウサーバーではなく、ウィンドウ7のみ)?そして、これは私のSQL Serverのバージョンです:

  Microsoft SQL Server Management Studio               9.00.1399.00
  Microsoft Analysis Services Client Tools             2005.090.1399.00
  Microsoft Data Access Components (MDAC)              6.1.7601.17514(win7sp1_rtm.101119-1850)
  Microsoft MSXML                                      3.0 4.0 5.0 6.0 
  Microsoft Internet Explorer                          9.0.8112.16421
  Microsoft .NET Framework                             2.0.50727.5448
  Operating System                                     6.1.7601

前もって感謝します...

4

1 に答える 1

0

JOB を生成し、それをストアド プロシージャなどのオブジェクトに割り当てる典型的なスクリプトは次のとおりです...

DECLARE @JobID BINARY(16)
EXECUTE msdb.dbo.sp_add_job @job_id = @JobID OUTPUT,
                            @job_name = N'<<A NAME OF YOUR JOB>>',
                            @enabled = 1,
                            @owner_login_name = N'@YOURLOGINCREDENTIALS',
                            @description = N'No description available.',
                            @category_name = N'[Uncategorized (Local)]',
                            @notify_level_eventlog = 0,
                            @notify_level_email = 2,
                            @notify_email_operator_name = N'<<OPTIONAL>>',
                            @notify_level_netsend = 0,
                            @notify_level_page = 0,
                            @delete_level = 0;
EXECUTE msdb.dbo.sp_add_jobstep @job_id = @JobID,
                                @step_id = 1,
                                @step_name = N'spMYPROCEDURE',
                                @command = N'EXEC spMYPROCEDURE',
                                @database_name = N'<<MASTER OR WHAT EVER YOUR DATABASE IS>>',
                                @subsystem = N'TSQL',
                                @flags = 6,
                                @retry_attempts = 3,
                                @retry_interval = 5,
                                @output_file_name = N'<<WHERE YOU WANT TO SAVE A LOG FILE OF THE JOB>> \spMYPROCEDURE.jobresults.log',
                                @on_success_step_id = 0,
                                @on_success_action = 1,
                                @on_fail_step_id = 0,
                                @on_fail_action = 2;
EXECUTE msdb.dbo.sp_update_job @job_id = @JobID, @start_step_id = 1;
EXECUTE msdb.dbo.sp_add_jobserver @job_id = @JobID, @server_name = N'(LOCAL)';
EXECUTE msdb.dbo.sp_add_jobschedule @job_id = @JobID,
                                    @name = N'spMYPROCEDURE',
                                    @enabled = 1,
                                    @freq_type = 8,
                                    @active_start_date = 20140417,
                                    @active_end_date = 99991231,
                                    @freq_interval = 62,
                                    @freq_subday_type = 1,
                                    @freq_subday_interval = 1,
                                    @freq_relative_interval = 1,
                                    @freq_recurrence_factor = 1,
                                    @active_start_time = 90000,
                                    @active_end_time = 235959;
GO

通常、最初にストアド プロシージャを作成し、テストして実行して機能することを確認してから、上記のようにジョブを割り当てます。

@active 時間はすべて整数の 10 進数であることに注意してください (例: 90000 = 09:00:00am)

USE [master]上記のスクリプトを実行する前に、データベース参照として必要になる場合もあります。

于 2016-06-07T01:20:56.130 に答える