Hello,此BAT脚本能够帮助开发者将某目录下全部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

调用方法

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvd2FuZ3pocHdhbmc=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="">

test.sql

set nocount on
go
select '$(p1)' as p1 ,'$(p2)' as p2

批量调用

d:test 文件夹下有多个  sql文件,批量执行。

执行

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvd2FuZ3pocHdhbmc=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="">

附上:

下载

bat+sqlcmd 批量执行脚本的更多相关文章

  1. Oracle批量执行脚本文件

    以下是Oracle批量执行脚本文件的步骤和方法 1.创建脚本文件(xx.sql): 例如文件CreateTable Create table tb1( id varchar2(30), Name va ...

  2. 通过SqlClr制作Sql自动化批量执行脚本

    原文:通过SqlClr制作Sql自动化批量执行脚本 通过SqlClr制作Sql自动化批量执行脚本 在与同事一起做项目时,看到同事用sqlclr做批量执行脚本,感觉挺新奇的就上网搜集资料自己模仿跟做了个 ...

  3. SaltStack 批量执行脚本

    这里演示如何使用 salt-master 对多台 salt-minion 批量执行脚本,步骤如下: [root@localhost ~]$ cat /srv/salt/top.sls # 先定义入口配 ...

  4. 利用bat批量执行脚本文件

    1.读取目录文件 利用bat 的for命令读取中的sql文件 for /r %%c in (0*.sql) do echo %%c %%c 相当于变量 in() 中的为循环的范围 此句的作用是显示当前 ...

  5. 使用sqlplus批量执行脚本的总结

    当然,我们可以在plsql中执行,但是在实际生产环境中,可能更多的是使用简便的sqlplus.步骤如下: 1.登陆client sqlplus connect <username>/< ...

  6. linux集群自动化搭建(生成密钥对+分发公钥+远程批量执行脚本)

    之前介绍过ansible的使用,通过ssh授权批量控制服务器集群 但是生成密钥和分发公钥的时候都是需要确认密码的,这一步也是可以自动化的,利用ssh + expect + scp就可以实现,其实只用这 ...

  7. Jmeter 批量执行脚本之-----------Ant

    一.环境介绍&准备: 1)jmeter3.2版本,需配备jdk1.8(或其他jmeter版本): 2)ant下载,并配置环境变量: a.下载地址:http://ant.apache.org/b ...

  8. py+selenium+IE 批量执行脚本10几分钟,IE会卡住【无解,提供绕过方法】

    问题:py+selenium+IE 批量执行单个脚本10几分钟,IE会卡住 一个脚本文件里有20几个用例,跑起来10多分钟,每次跑10分钟后(即第22条用例左右时)IE就会卡住,程序就会在那傻等,最后 ...

  9. selenium批量执行脚本操作

    import unittest import os from HTMLTestRunner import HTMLTestRunner # 待执行用例的目录 def allcase(): #引入执行用 ...

随机推荐

  1. 微软工具Sysinternals Suite

    工具:Sysinternals Suite 一个可以看进程的工具.

  2. onclick跳转到其他页面的几种方式

    如果是本页显示可以直接用location,方法如下: ①onclick="javascript:window.location.href='URL'" ②onclick=" ...

  3. java反射的基本使用

    反射机制是java中非常重要的功能,熟练使用反射功能对实际的开发有很大的帮助. 一,通过反射获取对象实例 使用的对象User package whroid.java.reflect; public c ...

  4. windows10下安装ubuntu16.04 双系统

    软件和材料:   UltraISO .ubuntu16.04镜像.U盘 步骤: 1.先在windows10 上下载UltraISO并安装 2.打开UltraISO,插入优盘,制作ubuntu160.4 ...

  5. 表单编码 appliation/x-www-form-urlencoded 与 multipart/form-data 的区别

    当表单使用POST方法时,表单数据提交到服务器端之前有两种编码类型可供选择.默认编码类型为 application/x-www-form-urlencoded,此时所有非字母数字类型的字符都需要转换为 ...

  6. redis批量设置过期时间

    Redis 中有删除单个 Key 的指令 DEL,但好像没有批量删除 Key 的指令,不过我们可以借助 Linux 的 xargs 指令来完成这个动作.代码如下: redis-cli keys &qu ...

  7. 【Hihocoder1636】Pangu and Stones(区间DP)

    题意:N堆石子,每次可以合并连续的长度从L到R的若干堆石子为1堆,费用为选择的石子总个数,求将N堆合并成1堆的最小总花费,无解输出0 思路:dp[i][j][k]表示将i到j这段区间合并为k堆的最小代 ...

  8. DBGridEH如何去表头?设置哪个属性

  9. HTML-loading动画1

    <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title> ...

  10. 济南day3

    连续几天都有点炸 预计的分拿不到,调整好心态,考试的时候多想一下,think twice,code once 唉,什么情况啊 题解链接 0+0+0 T1读错题输出反了 n*m%2判断是否==1 T2 ...