sqlserver--数据库定时任务(某表定时新增数据,通过新建作业)

0.打开 SQL server 代理服务

选择计算机右键——>管理——>服务与应用程序——>服务——>SQL server 代理

然后把SQL server 代理(MSSQLSERVER)启动,并设置成自动(如果只是测试可直接在数据库启动)
在这里插入图片描述

1. SQL Server 代理 ( 启动状态 ) → 作业(右键)→新建作业

注意 SQLServer代理要启动。 右键 --启动
在这里插入图片描述

在这里插入图片描述
2. 如图 数据库选择必须对应的数据库
在此举例为执行存储过程(存储过程见文章末尾)

    exec_demo       
    exec proInsertTable

在这里插入图片描述

在这里插入图片描述

新建计划
在这里插入图片描述

plantime plan_
在这里插入图片描述

在这里插入图片描述如图已经新增定时任务

在这里插入图片描述
在这里插入图片描述
注意:上图 如果开始作业成功 ,结果执行作业失败,也有可能是因为你 的表里 没有符合条件的数据,导致的执行失败。

如下图所示效果 表示执行作业成功了。

在这里插入图片描述

.
.
.
.
.

PS:新建 数据库表USERINFO 的存储过程 proInsertTable

在这里插入图片描述

创建存储过程 proInsertTable
--创建存储过程 proInsertTable
USE [DEMO]
GO

/****** Object:  StoredProcedure [dbo].[proInsertTable]    Script Date: 01/11/2020 09:43:00 ******/
SET ANSI_NULLS ON
GO

SET QUOTED_IDENTIFIER ON
GO

      CREATE  proc  [dbo].[proInsertTable]
      as
      begin
         INSERT [dbo].[USERINFO] ([uName], [uAge], [uWeight]) VALUES (N'测试1', N'18', N'100')
      end 
GO

PS:新建 数据库表USERINFO

在这里插入图片描述

创建表 DEMO

USE [DEMO]
GO

/****** Object:  Table [dbo].[USERINFO]    Script Date: 01/11/2020 09:44:36 ******/
SET ANSI_NULLS ON
GO

SET QUOTED_IDENTIFIER ON
GO

CREATE TABLE [dbo].[USERINFO](
	[uName] [nvarchar](50) NULL,
	[uAge] [nchar](10) NULL,
	[uWeight] [nchar](10) NULL,
	[creationTime] [datetime] NULL,
	[ID] [int] IDENTITY(1,1) NOT NULL
) ON [PRIMARY]

GO

ALTER TABLE [dbo].[USERINFO] ADD  CONSTRAINT [DF_USERINFO_creationTime]  DEFAULT (getdate()) FOR [creationTime]
GO

定时 删除某表数据 (删除30分钟以前的数据)

ps:假设现在时间为11点整,删除 10点30以前的数据
存储过程–删除 某表数据
USE [DEMO]
GO
/****** Object:  StoredProcedure [dbo].[proInsertTable]    Script Date: 01/11/2020 11:07:51 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
      ALTER  proc  [dbo].[proInsertTable]
      as
      begin
         delete  from userinfo where creationTime  < dateadd(minute,-30,GETDATE())
      end 

PS:新建好删除的存储过程,再按照上面 新建作业进行操作即可,完成定时删除某表数据

sql语句—删除 某表数据
--查询 10点30以前的数据,现在  时间为11点整
select * from userinfo
where creationTime  <   dateadd(minute,-30,GETDATE())
order by creationTime desc

--删除 10点30以前的数据,现在时间为11点整
delete  from userinfo 
where creationTime  < dateadd(minute,-30,GETDATE())

在这里插入图片描述在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值