为了便于在您自己的批处理命令中调用EasySQLMAIL中的信息发布任务,EasySQLMAIL从1.0.1213版本开始提供了从命令行触发信息发布任务的功能。本文向您描述如何在命令行中执行信息发布任务。
在任务配置中选择“允许从DOS命令行中启动此任务”选项
您可以在DOS命令行中通过命令 sqlmail.exe 204 要执行的任务ID 启动用执行的任务。其中,sqlmail.exe的位置在EasySQLMAIL安装目录下的bin目录中。命令的第一个参数"204"表示启动一个任务,第二个参数是要启动的任务ID。任务ID可以在任务管理界面中查询到。
在任务管理中查询“任务ID”
例如,要在命令行中启动上面列表中的任务1时,可以用如下命令:
sqlmail.exe 204 1
命令执行后,会返回以下代码:
0 命令执行成功,任务实例已生成
991 执行启动失败。查询任务控制服务日志了解详细原因。
992 版本不支持此功能。请检查您使用的EasySQLMAIL版本是否支持此特性。
993 发送命令失败,主程序可能未启动。请检查EasySQLMAIL系统是否启动。
994 任务ID不存在。请检查任务ID是否正确。
995 任务已停用。任务已被管理员停用,不能执行。
996 生成任务实例时失败。请查询任务控制服务日志了解详细原因。
997 任务配置不允许从命令行启动此任务。
您可以通过DOS命令行的%errorlevel%获得命令的返回代码。
(1)通过命令行启动任务时,EasySQLMAIL系统必须正在运行,否则任务无法启动。
(2)命令执行时,触发任务后会立即返回,不会等待任务执行完成后再返回。因此命令返回0时只表示生成任务实例成功,并不代表任务已执行成功。