sql语句延时执行或者是指定时间执行

--使用waitfor语句延迟或暂停程序的执行

--waitfor{delay'time'|time 'time'}

delay是指间隔时间 最长到24小时

time是指定时间执行

 

waitfor delay '00:00:10' --延迟10秒

A. 使用 WAITFOR TIME

以下示例在晚上 10:20 (22:20) 执行存储过程 sp_update_job。

复制代码

USE msdb;
EXECUTE sp_add_job @job_name = 'TestJob';
BEGIN
WAITFOR TIME '22:20';
EXECUTE sp_update_job @job_name = 'TestJob',
@new_name = 'UpdatedJob';
END;
GO

B. 使用 WAITFOR DELAY

以下示例在两小时的延迟后执行存储过程。

复制代码

BEGIN
WAITFOR DELAY '02:00';
EXECUTE sp_helpdb;
END;
GO
时间: 2024-12-28 22:48:48

sql语句延时执行或者是指定时间执行的相关文章

请问大神在数据库中可以执行的sql语句,为什么通过java类连接数据库执行报错

问题描述 请问大神在数据库中可以执行的sql语句,为什么通过java类连接数据库执行报错 报错信息: java.sql.SQLException: Already closed. 解决方案 这个错误提示并不是SQL语句的错误,而是Java的SQL操作类的连接对象已经关闭了,不能执行SQL而报出的异常. 解决方案二: 连接已经关了,当然出错了 解决方案三: 数据库为open,先open 在进行相应cmd命令执行. 解决方案四: 你的连接关闭了,jdbc去连接数据库啊 解决方案五: 这个问题还不是你

java定时器问题 ,实现每天指定时间执行任务

问题描述 java定时器问题 ,实现每天指定时间执行任务 我想让tomcat启动的时候执行一次,然后每天的凌晨1点执行一次 ,可是tomcat启动的时间不固定 ,不一定是1点,,,,,,,,,怎么实现呢? 解决方案 tomcat启动时最简单的就是web.xml配置一个servlet,启动时执行代码就行了. 1点钟的定时该怎么配就怎么配 解决方案二: 在tomcat启动你的servlet时,第一次启动你的定时器,并且这个时候,你的代码要捕捉当前的时间,然后利用当前的时间来计算凌晨1点的时间,然后设

Python小任务 - 如何编写指定时间执行的Python小程序

我们在平时的工作中经常会遇到这样的需求,需要再某个时间点执行一段程序逻辑. 那么,在python中我们是怎么做的呢? 下面看代码: waitDesignatedTimeToRun.py import time, datetime startTime = datetime.datetime(2016, 6, 8, 16, 45, 0) print('Program not starting yet...') while datetime.datetime.now() < startTime: ti

请问这样的SQL语句怎么样优化呢?查询时间好久啊

问题描述 select f.pc_name, f.phc_name, (select count(1) from p_resident c where c.phc_id = f.phc_id and c.pr_income is not null and c.pr_income < 4000) fourqian, (select count(1) from p_resident c where c.phc_id = f.phc_id and c.pr_income is not null and

查询mysql中执行效率低的sql语句的方法_Mysql

一些小技巧1. 如何查出效率低的语句?在MySQL下,在启动参数中设置 --log-slow-queries=[文件名],就可以在指定的日志文件中记录执行时间超过long_query_time(缺省为10秒)的SQL语句.你也可以在启动配置文件中修改long query的时间,如: 复制代码 代码如下:  # Set long query time to 8 seconds    long_query_time=8 2. 如何查询某表的索引?可使用SHOW INDEX语句,如: 复制代码 代码如

创建索引对SQL语句执行的影响

一.创建索引对执行计划的影响 在SQL开始执行之前,Oracle会确定SQL语句的执行计划,并按照执行计划的步骤访问相应的表和索引. 一旦执行计划确定下来,Oracle会按照这个执行计划完成SQL语句的执行,在SQL语句执行开始之后建立的索引不会改变SQL语句的执行计划. 因此,创建索引不会对执行计划有任何的影响,也就不会对运行中的SQL语句有影响.下面通过一个例子简单验证一下: SQL> CREATE TABLE TEST (ID NUMBER, FID NUMBER, NAME VARCHA

使用参数化和块语句来提高批处理SQL语句的执行效率

如果你的项目要求你的程序对高达几万条的数据在集中的时间内执行固定序列的操作,且不能完全使用存储过程时而需要使用程序来执行时.会需要这些优化. 我们知道,SQL服务器对一条语句的执行,需要分析.编译.执行这些步骤,通过参数化我们可以对一种命令只分析和编译一次,而执行多次,从而提高效率.在执行时,如果每次提交语句,可以完成多条SQL语句,则可以减少通讯时间,也可以提高效率. 通过 System.Data.IDbCommand.Prepare() 方法,我们可以在第一次执行语句时,分析和编译SQL语句

RMAN 提示符下执行SQL语句

       在手动恢复数据库时,有时候需要在SQL*Plus提示符以及操作系统提示符,RMAN提示符下来回切换显得有些繁琐.实际上RMAN为我们提供了命令行下执行一些简单的SQL语句以及PL/SQL的方法,以避免上述情形.本文描述了RMAN提示符下的一些常用命令及其用法.   1.RMAN提示符下执行SQL语句       语法: SQL '<command>' ;           语法比较简单,就是提示符下输入SQL,后接SQL命令,命令用单引号括起来      command 通常为

Oracle调用接口(OCI)源码剖析(2):执行SQL语句并获取结果

概述 接着上一篇文章<Oracle调用接口(OCI)源码剖析(1):创建数据库连接>,我们继续对OCI中执行SQL语句并获取结果的源码进行剖析.该操作主要是由两个函数完成的:CDbExecSql和CDbFetch,其中CDbExecSql函数用于执行普通SQL语句,CDbFetch函数用于获取数据库的返回结果. 下面对这两个函数的源码进行分析. OCI中执行SQL语句并获取结果的源码剖析 1.执行普通SQL语句的操作 在OCI中,执行普通SQL语句的操作是由CDbExecSql函数实现的,其代