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

时间:2018-07-09 21:36:40

标签: batch-file scheduled-tasks windows-server-2008-r2 sqlcmd

我的计划任务(在Windows Server 2008 R2上)每天早晨都“成功”运行,但是sqlcmd的输出未在输出文件中得到更新。日志文件更改为显示批处理文件已运行,但输出文件保持不变。

当我使用下面的代码行运行.bat文件时,它工作正常。 .csv文件将使用最新查询的结果进行更新。

sqlcmd -S SERVERNAME -i my_query.sql -s "," -o c:\scripts\My_query\query_results.csv -W -h-1

ftp.exe -s:"c:\scripts\My_query\file_upload.ftp"

有用信息:

  • 我正在以我的用户身份运行排定的任务,该用户是服务器管理员,并且可以访问有问题的服务器
  • 我尝试将访问权限授予用户以完全控制所涉及的所有文件和文件夹
  • 我尝试将C:\Windows\System32\cmd.exe作为带有参数/c C:\scripts\My_query\my_process.bat的操作来运行,以确保整个过程都运行
  • 任务计划程序可以很好地处理其他任务,但是在五个相似的进程中也存在相同的问题

1 个答案:

答案 0 :(得分:0)

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