bat+sqlcmd 批量执行脚本
2017-05-09 11:10
337 查看
Hello,此BAT脚本能够帮助开发者将某目录下全部SQL脚本按文件名称依次在指定数据库中批量执行。
不用忍受powershell invoke-sqlcmd 的笨重。在指执行时多一种选择。
bat文件
调用方法
test.sql
批量调用
d:test 文件夹下有多个 sql文件,批量执行。
执行
附上:
下载
不用忍受powershell invoke-sqlcmd 的笨重。在指执行时多一种选择。
bat文件
@echo off @REM ******** ******** General Batch for Starting SQL ******** ******** @REM %1 is the name of SQL script file @rem SET SQL_NAME=%1 @SET SQL_NAME=%1 @SHIFT /1 @REM SHIFT /1 @REM P1... is parameters of SQLCMD,P1=%1... @rem c for count @set /a c=0 @rem ******** ******** parameters for sql server login ******** ******** @set svrName=SERVERNAME\INSTANCENAME @set uname=your_name @set upwd=your_password @set db=YOURDBNAME @set s= %1 %2 %3 %4 %5 %6 %7 %8 %9 @FOR %%A IN (%s%) DO @set /a c=c+1 @if %c%==9 goto s9 @if %c%==8 goto s8 @if %c%==7 goto s7 @if %c%==6 goto s6 @if %c%==5 goto s5 @if %c%==4 goto s4 @if %c%==3 goto s3 @if %c%==2 goto s2 @if %c%==1 goto s1 @if %c%==0 goto s0 :s9 @sqlcmd -S%svrName% -U%uname% -P%upwd% -d%db% -i%SQL_NAME% -l60 -v P1=%1 P2=%2 p3=%3 p4=%4 p5=%5 p6=%6 p=%7 p8=%8 p9=%9 @goto end :s8 @sqlcmd -S%svrName% -U%uname% -P%upwd% -d%db% -i%SQL_NAME% -l60 -v P1=%1 P2=%2 p3=%3 p4=%4 p5=%5 p6=%6 p=%7 p8=%8 @goto end :s7 @sqlcmd -S%svrName% -U%uname% -P%upwd% -d%db% -i%SQL_NAME% -l60 -v P1=%1 P2=%2 p3=%3 p4=%4 p5=%5 p6=%6 p=%7 @goto end :s6 @sqlcmd -S%svrName% -U%uname% -P%upwd% -d%db% -i%SQL_NAME% -l60 -v P1=%1 P2=%2 p3=%3 p4=%4 p5=%5 p6=%6 @goto end :s5 @sqlcmd -S%svrName% -U%uname% -P%upwd% -d%db% -i%SQL_NAME% -l60 -v P1=%1 P2=%2 p3=%3 p4=%4 p5=%5 @goto end :s4 @sqlcmd -S%svrName% -U%uname% -P%upwd% -d%db% -i%SQL_NAME% -l60 -v P1=%1 P2=%2 p3=%3 p4=%4 @goto end :s3 @sqlcmd -S%svrName% -U%uname% -P%upwd% -d%db% -i%SQL_NAME% -l60 -v P1=%1 P2=%2 p3=%3 @goto end :s2 @sqlcmd -S%svrName% -U%uname% -P%upwd% -d%db% -i%SQL_NAME% -l60 -v P1=%1 P2=%2 @goto end :s1 @sqlcmd -S%svrName% -U%uname% -P%upwd% -d%db% -i%SQL_NAME% -l60 -v P1=%1 @goto end :s0 @sqlcmd -S%svrName% -U%uname% -P%upwd% -d%db% -i%SQL_NAME% <span style="font-size: 11.8181819915771px; font-family: Arial, Helvetica, sans-serif;">-l60 </span> @goto end :end @echo off @set svrName= @set uname= @set upwd= @set db= @exit /b 0
调用方法
test.sql
set nocount on go select '$(p1)' as p1 ,'$(p2)' as p2
批量调用
d:test 文件夹下有多个 sql文件,批量执行。
执行
附上:
下载
相关文章推荐
- 怎么用批处理*.bat 执行文件目录下面的SQL语句脚本(批量的)。。。@echo off是什么意思?
- bat+sqlcmd 批量运行脚本
- java调用sqlplus执行批量脚本获得输出结果和调用.bat文件
- SQL脚本文件批量执行的小工具SQLScriptRunner【更新安装包】
- 用bat命令执行SQL脚本
- 使用bat方式执行sql脚本
- windows 下使用bat来执行sql脚本详解
- 批量执行文件夹下面的所有sql脚本
- Java掉执行sql脚本的.bat文件
- 批量执行sql脚本文件
- oracle 执行sql文件脚本,批量插入或批量更新
- Android数据库更新,批量执行大量的sql脚本
- vbs 批量修改文件,bat 批处理文件调用执行vbs,并在cmd窗口打印返回值(vbs运行结果)
- 批量执行特定文件目录下SQL文件脚本
- 自动生成批量执行SQL脚本的批处理
- 批量执行SQL脚本
- DB2 SQL脚本批量执行
- 批量执行文件夹下面的所有sql脚本
- 批处理bat执行sql脚本
- 自动生成批量执行SQL脚本的批处理实例演示