0

刚刚创建了一个 SQL 代理作业,我认为能够将一些信息写入作业的历史记录会很方便,以防我以后想检查它。

我在这个例子中使用了 VBScript,并注意到我可以使用 Error 对象在历史记录中记录信息,例如:

Err.Raise 999, "The code died"

如果您右键单击该作业并选择“查看历史记录”,那么错误编号和描述就会出现在所有人面前。

但是成功完成呢?我可以Return以某种方式获得价值吗?最好说“处理 34 个文件后完成”之类的内容。

这次我会对 VBScript 的答案感兴趣,但是如果您知道如何使用 T-SQL 或 CmdExec 执行此操作,这将有助于了解,以防万一。谢谢。

4

1 回答 1

2

如果您在 SQL 作业中使用 VBScript,最好将 VBScript 保存为 .vbs 文件,并使用 CmdExec 作业步骤来执行它,如下所示

CScript c:\test.vbs

然后,在您的 .vbs 文件中,您可以使用 WScript.Echo 命令显示一条消息

WScript.Echo "This is a test"

如果您要双击 .vbs 文件,它会显示一个消息框,但是当使用 SQL 作业中的 CScript.exe 执行时,回显输出应写入作业的历史记录以供您查看。

请注意,尝试在具有 VBScript 作业步骤的 SQL 作业中直接使用 WScript.Echo 是行不通的。

如果您使用的是 T-SQL 步骤,则可以简单地使用 PRINT 语句,因为这将被写入历史记录。

于 2009-12-31T10:25:57.900 回答