【发布时间】:2012-01-13 07:27:41
【问题描述】:
我有一个案例,我有 10+ SQL script。
我不想一个接一个地运行我的所有脚本。
有没有一种方法可以让我在SQL Management studio 中连续运行我的所有脚本。
我找到了this 的帖子。创建批处理文件似乎更容易。
这就是你所需要的:
@echo off
ECHO %USERNAME% started the batch process at %TIME% >output.txt
for %%f in (*.sql) do (
(
sqlcmd.exe -S servername -E -d databasename -i %%f >>output.txt
)
pause
正在替换服务器名和数据库名,但似乎不起作用。
有什么想法吗?
【问题讨论】:
-
运行批处理文件时 output.txt 中会出现什么?
-
@MarkBannister Willem 在 10:50:30.46 开始批处理。然后什么都没有发生
-
如果您从批处理文件中删除
@echo off命令并重试,您会得到什么输出?另外,尝试将ECHO %PATH%添加到批处理文件的开头并检查是否包含 SQLCMD.EXE 的路径。 -
@MarkBannister Willem 于 11:18:51.16 开始批处理。
-
路径怎么样 - 它是否包含 SQLCMD.EXE 的路径?此外,如果您尝试在命令提示符下交互式运行批处理命令,会发生什么情况?
标签: sql sql-server batch-file sql-scripts