2

我必须在数据库服务器上执行大量脚本,我可以在批处理的帮助下执行它,但是这个数据库服务器有多个数据库,所以对于我在下面编写的每个数据库都提到了脚本-EX-

对于数据库名称1-

for %%G in (*.sql) do sqlcmd /S [Server] /d [A] -E   -i"%%G" pause

对于数据库名称2-

for %%G in (*.sql) do sqlcmd /S [Server] /d [B] -E   -i"%%G" pause

有什么办法让我不必为每个数据库名称编写这个 .bat 文件?我想编写适用于所有数据库的单个脚本......

4

1 回答 1

1

您可以将脚本更改为:

for %%G in (*.sql) do sqlcmd /S %1 /d %2 -E   -i"%%G" pause

然后在启动 bash 脚本时传入服务器和数据库名称。例如,如果您的脚本名为“myscript.bat”,那么您可以通过命令行从命令行启动它

> myscript.bat server name
于 2013-03-07T15:05:27.960 回答