检查存储过程中的时间

发布于 2024-10-07 17:13:35 字数 126 浏览 1 评论 0原文

我有一个需要很长时间才能执行的存储过程。我们希望它在夜间执行,但它必须时不时地检查当前时间,并且在给定时间它必须停止执行。我该怎么做?请向我提供可以在存储过程中使用的代码。我们使用的是 Microsoft SQL Server 2005。

I have a stored procedure that takes a lot of time to execute. We want it to execute during the night, but it has to check for the current time every now and then, and at a given time it has to stop executing. How do I do that? Please provide me with the code I can use in my stored procedure. We are using Microsoft SQL Server 2005.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

自演自醉 2024-10-14 17:13:35

您可以获取当前日期:

SELECT GETDATE()

停止执行:

If @date > GETDATE()
    RETURN --Exits procedure

其中@date 是您想要停止执行的日期/时间

You can get the current date:

SELECT GETDATE()

Stop executing:

If @date > GETDATE()
    RETURN --Exits procedure

Where @date is the date/time when you want to stop executing

暮光沉寂 2024-10-14 17:13:35

创建维护计划并指定其开始时间。在此计划中创建“执行T-SQL语句任务”并为其指定执行超时(以秒为单位)。

Create Maintenance plan and sprecify start time for it. Create "Execute T-SQL statement task" in this plan and specify execution timeout for it (in seconds).

家住魔仙堡 2024-10-14 17:13:35

为什么你想要存在一个未完成的过程?就数据完整性而言,您不会让事情处于糟糕的状态或回滚您刚刚完成的所有工作吗?

尝试提高proc的性能不是更好的解决方案吗?

Why woudl you want to exist a proc that is not finished? Wouldn't you be leaving things in a bad state as far as data integrity or rolling back all the work you just did??

Wouldn't it be a better solution to try to improve the performance of the proc?

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文