能不能让SQL Server过一段时间自动执行某一段储存过程! 作业是由 SQL Server 代理程序按顺序执行的一系列指定的操作。作业可以执行更广泛的活动,包括运行 Transact-SQL 脚本、命令行应用程序和 ActiveX 脚本。可以创建作业来执行经常重复和可调度的任务,并且作业可产生警报以通知用户作业的状态。 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 如何创建作业(企业管理器)创建作业 展开服务器组,然后展开服务器。展开"管理",然后展开"SQL Server 代理程序"。右击"作业",然后单击"新建作业"命令。在"名称"框中输入作业的名称。如果不希望作业在创建后立即运行,则清除"启用"复选框。例如,如果要在按计划运行之前测试某个作业,则禁用该作业。在"源"下执行下列操作之一: 单击"以本地服务器为目标"选项(如果作业仅在此服务器上运行)。如果选择该选项,则跳到第 9 步。单击"以多个服务器为目标"选项(如果作业在其它服务器上运行)。然后单击"更改"。 只有服务器是主服务器时,才启用此选项。在"更改作业的目标服务器"对话框中,在"可用服务器"选项卡上单击某台服务器,然后单击向右箭头将该服务器移动到"选定的目标服务器"列表中。单击"确定"按钮返回"新建作业属性"对话框。在"所有者"列表中选择将成为作业所有者的用户。 在"描述"框中输入对作业功能的描述。最大字符数为 512。 重要 每个作业至少要有一个步骤。必须先为作业创建一个步骤后,作业才可以保存。 企业管理器 --管理 --SQL Server代理 --右键作业 --新建作业 --"常规"项中输入作业名称 --"步骤"项 --新建 --"步骤名"中输入步骤名 --"类型"中选择"Transact-SQL 脚本(TSQL)" --"数据库"选择执行命令的数据库 --"命令"中输入要执行的语句 --确定 --"调度"项 --新建调度 --"名称"中输入调度名称 --"调度类型"中选择你的作业执行安排 --如果选择"反复出现" --点"更改"来设置你的时间安排 --上面是向导方式,下面是SQL语句--创建作业exec msdb..sp_add_job @job_name='数据处理'--创建作业步骤declare @sql varchar(800),@dbname varchar(250)select @sql='exec p_createxml' --数据处理的命令 ,@dbname=db_name() --执行数据处理的数据库名exec msdb..sp_add_jobstep @job_name='数据处理', @step_name = '数据同步', @subsystem = 'TSQL', @database_name=@dbname, @command = @sql, @retry_attempts = 5, --重试次数 @retry_interval = 5 --重试间隔/*--创建调度EXEC msdb..sp_add_jobschedule @job_name = '数据处理', @name = '时间安排', @freq_type=4, --4 每天,8 每周,16 每月 @freq_interval=1, --作业执行的天数 @freq_subday_type=0, --是否重复执行,0x1 在指定的时间, 0x4 分钟, 0x8 小时 @freq_subday_interval=1, --重复周期 @freq_recurrence_factor=0, --重复执行,则设置为1,否则设置为0 @active_start_time = 00000 --0点开始执行--*/--周调度EXEC msdb.dbo.sp_add_jobschedule @job_name = '数据处理', @name = N'时间安排', @freq_type = 8, @freq_interval = 8, @freq_subday_type = 1, @freq_subday_interval = 1, @freq_relative_interval = 0, @freq_recurrence_factor = 1--月调度EXEC msdb.dbo.sp_add_jobschedule @job_name = '数据处理', @name = N'时间安排', @freq_type = 16, @active_start_time = 000000, --0点开始执行 @freq_interval = 1, --在每个月的1号执行 @freq_subday_type = 1, @freq_subday_interval = 1, @freq_relative_interval = 0, @freq_recurrence_factor = 1 注意,设置了JOB(作业)后,一定要将SQL Agent服务设置为自动启动,否则你的作业不会被执行. 数据库服务器的问题 找出有最新回复的10个帖子列表,按回复时间倒序排列 这条语句怎么建立索引来提高查找速度 到期后修改字段的问题 字符型字段的大小放到最大,有什么不好? 怎么样将ACCESS数据库中的数据导入到SQL中! xp安装SQL Server 2000开发版的问题,着急呀!求救 存储过程中创建临时表遇见的问题 sql语句问题(初学着的问题) SQLSERVER 元老请进!! 谁教我用sql server? 如何配置SQL server2000连接池
创建作业 展开服务器组,然后展开服务器。
展开"管理",然后展开"SQL Server 代理程序"。
右击"作业",然后单击"新建作业"命令。
在"名称"框中输入作业的名称。
如果不希望作业在创建后立即运行,则清除"启用"复选框。例如,如果要在按计划运行之前测试某个作业,则禁用该作业。
在"源"下执行下列操作之一:
单击"以本地服务器为目标"选项(如果作业仅在此服务器上运行)。如果选择该选项,则跳到第 9 步。
单击"以多个服务器为目标"选项(如果作业在其它服务器上运行)。然后单击"更改"。
只有服务器是主服务器时,才启用此选项。在"更改作业的目标服务器"对话框中,在"可用服务器"选项卡上单击某台服务器,然后单击向右箭头将该服务器移动到"选定的目标服务器"列表中。
单击"确定"按钮返回"新建作业属性"对话框。
在"所有者"列表中选择将成为作业所有者的用户。
在"描述"框中输入对作业功能的描述。最大字符数为 512。
重要 每个作业至少要有一个步骤。必须先为作业创建一个步骤后,作业才可以保存。
--管理
--SQL Server代理
--右键作业
--新建作业
--"常规"项中输入作业名称
--"步骤"项
--新建
--"步骤名"中输入步骤名
--"类型"中选择"Transact-SQL 脚本(TSQL)"
--"数据库"选择执行命令的数据库
--"命令"中输入要执行的语句
--确定
--"调度"项
--新建调度
--"名称"中输入调度名称
--"调度类型"中选择你的作业执行安排
--如果选择"反复出现"
--点"更改"来设置你的时间安排
exec msdb..sp_add_job @job_name='数据处理'--创建作业步骤
declare @sql varchar(800),@dbname varchar(250)
select @sql='exec p_createxml' --数据处理的命令
,@dbname=db_name() --执行数据处理的数据库名exec msdb..sp_add_jobstep @job_name='数据处理',
@step_name = '数据同步',
@subsystem = 'TSQL',
@database_name=@dbname,
@command = @sql,
@retry_attempts = 5, --重试次数
@retry_interval = 5 --重试间隔/*--创建调度
EXEC msdb..sp_add_jobschedule @job_name = '数据处理',
@name = '时间安排',
@freq_type=4, --4 每天,8 每周,16 每月
@freq_interval=1, --作业执行的天数
@freq_subday_type=0, --是否重复执行,0x1 在指定的时间, 0x4 分钟, 0x8 小时
@freq_subday_interval=1, --重复周期
@freq_recurrence_factor=0, --重复执行,则设置为1,否则设置为0
@active_start_time = 00000 --0点开始执行
--*/--周调度
EXEC msdb.dbo.sp_add_jobschedule @job_name = '数据处理',
@name = N'时间安排',
@freq_type = 8,
@freq_interval = 8,
@freq_subday_type = 1,
@freq_subday_interval = 1,
@freq_relative_interval = 0,
@freq_recurrence_factor = 1--月调度
EXEC msdb.dbo.sp_add_jobschedule @job_name = '数据处理',
@name = N'时间安排',
@freq_type = 16,
@active_start_time = 000000, --0点开始执行
@freq_interval = 1, --在每个月的1号执行
@freq_subday_type = 1,
@freq_subday_interval = 1,
@freq_relative_interval = 0,
@freq_recurrence_factor = 1