2


我必须运行n查询 SQL 以更新更多数据库。我创建了一个批处理文件来帮助我完成此活动,但查询不是按名称排序的。

我使用这个批处理命令:

for %%I in (.\*.sql) DO sqlcmd -S .\istance -U username -P password -d dbname -i %%I -o .\%%I.log

如何运行按名称排序的所有查询?
感谢您的回答。

注意:我使用的是 Windows 7。

4

1 回答 1

5

FOR 命令不按名称顺序枚举文件的唯一原因是文件系统不是 NTFS。FAT 文件系统按删除顺序枚举文件。

所以使用显式名称顺序枚举

for /F "tokens=*" %%i in ('dir /b /on *.sql') do (
    sqlcmd -S .\istance -U username -P password -d dbname -i %%i -o .\%%i.log
)
于 2013-10-14T16:39:03.207 回答