当前位置: 首页 > news >正文

SQL Server 中定时调度调用存储过程

要在SQL中定时调度调用存储过程,你可以使用SQL Server代理(如果你正在使用SQL Server数据库)。下面是一些步骤来配置SQL Server代理以定时调度调用存储过程:

  1. 打开SQL Server Management Studio (SSMS) 并连接到你的SQL Server实例。

  2. 在对象资源管理器中,展开"SQL Server代理"节点。

  3. 右键单击"作业",然后选择"新建作业"。

  4. 在"新建作业"对话框中,输入作业的名称和描述。

  5. 在"步骤"节点中,单击"新建"创建一个新的作业步骤。

  6. 在"新建步骤"对话框中,输入步骤的名称和描述。

  7. 在"类型"下拉列表中,选择"Transact-SQL 脚本 (T-SQL)"。

  8. 在"脚本"文本框中,输入调用存储过程的T-SQL代码,例如:

 

sql复制代码

EXEC YourStoredProcedureName;
  1. 单击"确定"保存步骤。
  2. 在"新建作业"对话框中,选择"调度"节点。
  3. 单击"新建"创建一个新的调度计划。
  4. 在"新建调度"对话框中,定义调度的频率和时间,例如每天、每周、每月等。
  5. 单击"确定"保存调度计划。
  6. 在"新建作业"对话框中,选择"通知"节点(可选)。
  7. 单击"确定"保存作业。

完成上述步骤后,SQL Server代理将按照你定义的调度计划定时调用存储过程。你可以根据需要修改和扩展这些步骤,以满足你的特定要求。

请注意,这是针对SQL Server数据库的方法。如果你使用的是其他数据库管理系统(如MySQL、Oracle等),它们可能有自己的定时调度机制。你可以参考相应数据库的文档,以了解如何定时调度调用存储过程。

要批量创建存储过程和调度作业,你可以编写一个脚本,其中包含创建存储过程和调度作业的T-SQL代码,并在SQL Server Management Studio (SSMS)中执行该脚本。以下是一个简单的示例,演示如何批量创建存储过程和调度作业:

  1. 在文本编辑器中创建一个新的SQL脚本文件,例如"CreateProceduresAndJobs.sql"。

  2. 在脚本文件中,编写创建存储过程的T-SQL代码。例如:

 

sql复制代码

CREATE PROCEDURE Procedure1
AS
BEGIN
-- 存储过程逻辑
END
GO
CREATE PROCEDURE Procedure2
AS
BEGIN
-- 存储过程逻辑
END
GO

你可以根据需要添加更多的存储过程代码。

  1. 接下来,编写创建调度作业的T-SQL代码。例如:

 

sql复制代码

USE msdb;
GO
-- 创建作业1
EXEC dbo.sp_add_job
@job_name = N'Job1',
@enabled = 1,
@description = N'调度作业1';
GO
-- 添加作业步骤
EXEC dbo.sp_add_jobstep
@job_name = N'Job1',
@step_name = N'Step1',
@subsystem = N'TSQL',
@command = N'EXEC Procedure1;', -- 调用存储过程1
@on_success_action = 1; -- 成功时结束作业
GO
-- 创建调度计划
EXEC dbo.sp_add_schedule
@schedule_name = N'Schedule1',
@enabled = 1,
@freq_type = 4, -- 每天
@freq_interval = 1, -- 每1天
@active_start_time = 000000; -- 开始时间
GO
-- 将调度计划绑定到作业
EXEC dbo.sp_attach_schedule
@job_name = N'Job1',
@schedule_name = N'Schedule1';
GO

你可以根据需要添加更多的作业和调度计划代码。

  1. 保存脚本文件。
  2. 打开SQL Server Management Studio (SSMS) 并连接到你的SQL Server实例。
  3. 在SSMS中,打开一个新的查询窗口。
  4. 将脚本文件的内容复制到查询窗口中。
  5. 执行查询窗口中的脚本,可以通过点击工具栏上的"执行"按钮或按F5键来执行。

执行完毕后,SSMS将按照脚本中的定义创建存储过程和调度作业。你可以根据需要修改脚本中的存储过程和调度作业的名称、逻辑、调度计划等。使用脚本的方式可以方便地批量创建和管理存储过程和调度作业。

相关文章:

  • LabVIEW对多个同一类型控件进行操作
  • opencv官网文档学习
  • C++ 多线程之OpenMP并行编程使用详解
  • vue3视频大小适配浏览器窗口大小
  • 【LeetCode】2103. 环和杆
  • sql-50练习题11-15
  • 【深度学习】pytorch——实现CIFAR-10数据集的分类
  • 排序算法(1)
  • 第21期 | GPTSecurity周报
  • 【QT】鼠标常用事件
  • C++标准模板(STL)- 类型支持 (类型属性,is_volatile,is_trivial,is_const)
  • 【跟小嘉学 Rust 编程】三十四、Rust的Web开发框架之一: Actix-Web的进阶
  • C#反射的学习,反射的一些注意事项,反射的一些使用代码的实例
  • VSCode 如何设置背景图片
  • Linux启动故障排错
  • 【EOS】Cleos基础
  • js写一个简单的选项卡
  • Less 日常用法
  • MD5加密原理解析及OC版原理实现
  • Vue 重置组件到初始状态
  • vue2.0一起在懵逼的海洋里越陷越深(四)
  • 机器学习学习笔记一
  • 前端每日实战:61# 视频演示如何用纯 CSS 创作一只咖啡壶
  • 如何正确配置 Ubuntu 14.04 服务器?
  • 一起来学SpringBoot | 第三篇:SpringBoot日志配置
  • # Maven错误Error executing Maven
  • #我与Java虚拟机的故事#连载01:人在JVM,身不由己
  • (1/2)敏捷实践指南 Agile Practice Guide ([美] Project Management institute 著)
  • (2)Java 简介
  • (JS基础)String 类型
  • (poj1.3.2)1791(构造法模拟)
  • (过滤器)Filter和(监听器)listener
  • (十五)使用Nexus创建Maven私服
  • (太强大了) - Linux 性能监控、测试、优化工具
  • (一)WLAN定义和基本架构转
  • (轉)JSON.stringify 语法实例讲解
  • .net core webapi 部署iis_一键部署VS插件:让.NET开发者更幸福
  • .NET Core 中的路径问题
  • .NET Micro Framework初体验(二)
  • .net mvc actionresult 返回字符串_.NET架构师知识普及
  • .net on S60 ---- Net60 1.1发布 支持VS2008以及新的特性
  • .net 写了一个支持重试、熔断和超时策略的 HttpClient 实例池
  • .NET3.5下用Lambda简化跨线程访问窗体控件,避免繁复的delegate,Invoke(转)
  • .NET学习教程二——.net基础定义+VS常用设置
  • @DateTimeFormat 和 @JsonFormat 注解详解
  • @RequestParam @RequestBody @PathVariable 等参数绑定注解详解
  • [ vulhub漏洞复现篇 ] Apache Flink目录遍历(CVE-2020-17519)
  • [AHOI2009]中国象棋 DP,递推,组合数
  • [CF703D]Mishka and Interesting sum/[BZOJ5476]位运算
  • [jquery]this触发自身click事件,当前控件向上滑出
  • [LeetBook]【学习日记】获取子字符串 + 颠倒子字符串顺序
  • [leetcode] Longest Palindromic Substring
  • [loj6039]「雅礼集训 2017 Day5」珠宝 dp+决策单调性+分治
  • [mvc] 简单的forms认证
  • [office] excel2003进行可视性加密的方法 #媒体#其他#知识分享