计划任务使用 sqlcmd .bat文件运行,但不更新输出文件



我的计划任务(在Windows Server 2008 R2上(每天早上都"成功"运行,但sqlcmd的输出不会在输出文件中更新。日志文件将更改以显示批处理文件已运行,但输出文件保持不变。

当我用下面的代码行运行一个.bat文件时,它运行得很好。.csv文件将使用最新的查询结果进行更新。

sqlcmd -S SERVERNAME -i my_query.sql -s "," -o c:scriptsMy_queryquery_results.csv -W -h-1
ftp.exe -s:"c:scriptsMy_queryfile_upload.ftp"

有用信息:

  • 我以我的用户身份运行计划任务,该用户是一名服务器管理员,可以访问有问题的服务器
  • 我已经尝试向用户提供明确的访问权限,以完全控制所涉及的所有文件和文件夹
  • 我已尝试将C:WindowsSystem32cmd.exe作为带有参数/c C:scriptsMy_querymy_process.bat的操作运行,以确保整个进程运行
  • 任务调度程序在其他任务中运行良好,但在五个类似的进程中也存在同样的问题

无论用户是否登录,任务都配置为运行吗?如果是这样,它将永远找不到您的SQL文件,因为当您以这种方式配置计划任务时,默认工作目录是SYSTEM32。您需要提供SQL文件的完整路径。

最新更新