0

我正在开发一个系统管理员可以安排中断的管理应用程序。为了使中断发生,我需要在单个表上运行一个简单的更新语句。问题是我希望他们能够在下午 12 点登录并在晚上 9 点安排中断,这样我们就不必让员工在线执行此操作。

SQL Server 中是否有某种内置方式来安排这样的更新 stmt?

理想情况下,我的管理 web 应用程序能够在 SQL Server 上调用某些东西,并说在晚上 9 点而不是之前运行它,否则我知道我可以创建一个线程和计时器来在我的 web 应用程序中运行更新,但这个想法让我畏缩.. .

提前致谢。克里斯

4

2 回答 2

1

正如 Crispalot 爵士所解释的,SQL Server 代理是一种方式。但是,如果您想要即使在 SQL Azure 或 SQL Server Express(不支持 SQL Server 代理)上也能正常工作的低租金,SQL Server 代理被禁用,或者您无权创建作业,T-SQL 也可以这样做:

WAITFOR TIME '21:00:00';
---- do your thing here;

然后当然还有其他外部选项——Azure 中的工作角色、Windows 中的任务调度程序、PowerShell 中的作业机制……所有这些都可以直接或间接调用某些 SQL 或调用存储过程。

于 2012-09-18T22:24:22.880 回答
0

I think you might be looking for the SQL Server Agent.

You can use it to do pretty much anything you like - run a backup plan, call a stored procedure, etc.

This documentation should give you the pointers you need to get started, and specifically this explains how to create a job.

于 2012-09-18T22:17:47.527 回答