SQL Server:以编程方式执行维护计划

发布于 2024-11-15 17:24:04 字数 98 浏览 3 评论 0原文

有没有办法以编程方式执行(启动)SQL Server 维护计划?我们有一个每晚运行并用大量数据更新数据库的 Windows 服务,一旦完成,我们希望触发数据库中的维护计划以开始运行。

Is there any way to programmatically execute (start) a SQL Server maintenance plan? We have a windows service that runs nightly and updates the DB with lots of data, once that is finished we would like to trigger a maintenance plan in the DB to start running.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

小ぇ时光︴ 2024-11-22 17:24:04

您可以通过 sp_start_job 启动维护计划中的作业:

use msdb; 
go
exec dbo.sp_start_job N'job_name' ;
go

You can start a job which is part of your maintenance plan by sp_start_job:

use msdb; 
go
exec dbo.sp_start_job N'job_name' ;
go
感性 2024-11-22 17:24:04

如果您收到错误“找不到存储过程‘dbo.sp_start_job’。”试试这个:

execute msdb.dbo.sp_maintplan_start @plan_id = N'549EDF1B-5712-472E-9722-DD81F622A3C2'

您可以从此查询中获取 guid:

SELECT s.id AS [ID]    
FROM msdb.dbo.sysmaintplan_plans AS s    
WHERE s.name=N'MyMaintenancePlan'

If you get the error "Could not find stored procedure 'dbo.sp_start_job'." try this one:

execute msdb.dbo.sp_maintplan_start @plan_id = N'549EDF1B-5712-472E-9722-DD81F622A3C2'

You get the guid from this query:

SELECT s.id AS [ID]    
FROM msdb.dbo.sysmaintplan_plans AS s    
WHERE s.name=N'MyMaintenancePlan'
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文