【发布时间】:2012-12-28 13:33:45
【问题描述】:
我一直在尝试设置一个计划,以便在 Windows 任务计划程序中每小时运行一个存储过程(因为我正在使用 SQL Express 并且无法安装第 3 方工具),但是在尝试了各种方法之后,例如运行来自任务调度程序的 .bat 文件,从任务调度程序打开 SqlCmd 实用程序并传递命令行语法或 .sql 脚本文件我没有运气。
我知道这是可以做到的,因此我确信这是我错过的东西,但如果有人能分享他们的经验,我将非常感激。
以下命令在批处理文件中...
sqlcmd -E -i"C:\Users\Administrator\Desktop\test.sql" -o"C:\Users\Administrator\Desktop\dump.txt"
非常感谢
【问题讨论】:
-
使用 sqlcmd 看起来很合理。为什么你在那个上失败了?
-
运行 SQLCMD 的 .bat 文件不起作用怎么办?给我们详细信息。
-
不确定 - 目前该操作会打开 SqlCmd 实用程序“C:\Program Files\Microsoft SQL Server\100\Tools\Binn\SQLCMD.EXE”,并且在参数字段中我有 sqlcmd - E -i"C:\Users\Administrator\Desktop\test.sql" -o"C:\Users\Administrator\Desktop\dump.txt"
-
据我了解,-E 表示受信任的“连接”,不定义服务器 (-S) 表示它将选择默认实例。在 sql 脚本文件中,我只有 EXEC databasename.dbo.storedprocedurename,当我在 sqlcmd 实用程序中手动输入它时,它可以工作,但是当我在任务上单击“运行”时,什么也没有发生 - 不确定它是否在做任何事情,但什么也没有出现在表和我指定为输出的 dump.txt 文件中没有创建,所以我猜它什么也没做
标签: sql-server stored-procedures scheduled-tasks