如何在 SQL Server 中每 5 分钟运行一次查询

poo*_*rma 1 sql-server-2008

我想每 5 分钟运行一次查询。我想知道 SQL Server 中是否存在类似计时器的东西。

这对我真的很有帮助。我用谷歌搜索了很多,但没有得到任何有用的信息。

您的建议将不胜感激。普加

Jes*_*dez 5

您可以通过 gui 或使用这些存储过程创建 SQL 代理作业:https : //technet.microsoft.com/en-us/library/ms181153(v=sql.105).aspx

还要检查这个例子(从https://www.mssqltips.com/sqlservertip/3052/simple-way-to-create-a-sql-server-job-using-tsql/借来的):

USE msdb
go
CREATE procedure [dbo].[sp_add_job_quick] 
@job nvarchar(128),
@mycommand nvarchar(max), 
@servername nvarchar(28),
@startdate nvarchar(8),
@starttime nvarchar(8)
as
--Add a job
EXEC dbo.sp_add_job
    @job_name = @job ;
--Add a job step named process step. This step runs the stored procedure
EXEC sp_add_jobstep
    @job_name = @job,
    @step_name = N'process step',
    @subsystem = N'TSQL',
    @command = @mycommand
--Schedule the job at a specified date and time
exec sp_add_jobschedule @job_name = @job,
@name = 'MySchedule',
@freq_type=1,
@active_start_date = @startdate,
@active_start_time = @starttime
-- Add the job to the SQL Server Server
EXEC dbo.sp_add_jobserver
    @job_name =  @job,
    @server_name = @servername


exec dbo.sp_add_job_quick 
@job = 'myjob', -- The job name
@mycommand = 'sp_who', -- The T-SQL command to run in the step
@servername = 'serverName', -- SQL Server name. If running localy, you can use @servername=@@Servername
@startdate = '20130829', -- The date August 29th, 2013
@starttime = '160000' -- The time, 16:00:00
Run Code Online (Sandbox Code Playgroud)