Sql server 如何使用xp\u cmdshell执行当前文件夹和子文件夹的所有.sql文件

Sql server 如何使用xp\u cmdshell执行当前文件夹和子文件夹的所有.sql文件,sql-server,batch-file,Sql Server,Batch File,我正在使用SQLServer2008,我正在开发脚本,以获取给定路径的所有.sql文件(也递归地插入子文件夹)。提前感谢。您可以使用这样的批处理文件。将其命名为ashwin.bat(或任何您喜欢的名称),它将查找C:\tmp\so\ashwin中扩展名为.sql的所有文件,然后针对localhost\localsqla的命名实例数据库对所有这些文件调用sqlcmd,并在主数据库中运行它们 @echo off For /R "C:\tmp\so\ashwin\" %%i in (*.sql) D

我正在使用SQLServer2008,我正在开发脚本,以获取给定路径的所有.sql文件(也递归地插入子文件夹)。提前感谢。

您可以使用这样的批处理文件。将其命名为ashwin.bat(或任何您喜欢的名称),它将查找C:\tmp\so\ashwin中扩展名为.sql的所有文件,然后针对localhost\localsqla的命名实例数据库对所有这些文件调用sqlcmd,并在主数据库中运行它们

@echo off
For /R "C:\tmp\so\ashwin\"  %%i in (*.sql) DO CALL sqlcmd.exe -E -S localhost\localSQLA -d master  -i %%i

用于日志记录的litle增强功能:

@echo off
For /R "C:\Deploy\SQL"  %%i in (*.sql) DO CALL echo %%i && sqlcmd.exe -E -S DB_IP -d DATABASE -i %%i -j

你能解释一下这是如何回答这个问题的吗?