0

在 SQL Server Agent 2005 中计划任务的脚本步骤中,我需要触发在不同服务器上运行的 web 脚本。我正在这样做:

Dim ie 
Set ie = CreateObject( "InternetExplorer.Application" )

ie.navigate "...to my dreamscript"

' Wait till IE is ready
Do While ie.Busy
    (1)
Loop

ie.Quit
set ie = Nothing

在 (1) 我想“睡觉”(例如 WScript.sleep(..)),但 WScript 在此环境中不可用。还有另一种方法可以“睡”一会儿吗?

4

3 回答 3

2

如果您只是想让 SQL SErver 代理任务等待一段时间,请使用带有脚本的 T-SQL 任务

WAITFOR DELAY '01:00:00' -- 等待一个小时

并将时间更改为您想要等待的持续时间。

HTH安迪

于 2008-12-17T17:01:34.430 回答
1

您可以编写控制台应用程序并在 SQL 代理作业中执行控制台应用程序。

于 2008-12-17T15:51:28.800 回答
0

您可以使用“操作系统 (CmdExec)”类型的 SQL Server 代理任务来执行 wscript。这需要启用 xp_cmdshell,并且出于安全考虑,它通常被禁用(默认情况下)。但是,它确实允许您启动在命令提示符下运行的程序,例如 wscript。

您可以将代码移动到 SQLCLR 中,您可以在其中使用 C# 或 VB.Net 编写存储过程。VB.Net SQLCLR 代码与您原来的 wscript 非常相似。

于 2008-12-17T16:59:38.663 回答