我想每 5 分钟运行一次查询。我想知道 SQL Server 中是否存在类似计时器的东西。
这对我真的很有帮助。我用谷歌搜索了很多,但没有得到任何有用的信息。
您的建议将不胜感激。普加
您可以通过 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)