目标:
快速在21个库修改Test表的某条记录,这几个库都分别在不同的服务器上。
通常会想到,到每个库都执行一下语句不就好了吗?这个数据库切换来切换去,挺麻烦了,通过命令行工具osql.exe就可以快速的解决这个问题。
方法:
1、新建一个文本,添加如下内容,保存,修改后缀为.bat批处理文件。
"C:\Program Files\Microsoft SQL Server\100\Tools\Binn\osql.exe" -Usa -P123456 -S192.168.3.8,9888 -dGUANGZHOU -icmd.sql -o广州.log"
C:\Program Files\Microsoft SQL Server\100\Tools\Binn\osql.exe" -Usa -P123456 -S192.168.3.8,9888 -dSHENZHEN -icmd.sql -o深圳.log"
C:\Program Files\Microsoft SQL Server\100\Tools\Binn\osql.exe" -Usa -P123456 -S192.168.5.8 -dZHUHAI -icmd.sql -o珠海.log"
C:\Program Files\Microsoft SQL Server\100\Tools\Binn\osql.exe" -Usa -P123456 -S192.168.7.8 -dSHANTOU -icmd.sql -o汕头.log"
C:\Program Files\Microsoft SQL Server\100\Tools\Binn\osql.exe" -Usa -P123456 -S192.168.7.8 -dFOSHAN -icmd.sql -o佛山.log"
C:\Program Files\Microsoft SQL Server\100\Tools\Binn\osql.exe" -Usa -P123456 -S192.168.7.8 -dSHAOGUAN -icmd.sql -o韶关.log"
C:\Program Files\Microsoft SQL Server\100\Tools\Binn\osql.exe" -Usa -P123456 -S192.168.7.8 -dHEYUAN -icmd.sql -o河源.log"
C:\Program Files\Microsoft SQL Server\100\Tools\Binn\osql.exe" -Usa -P123456 -S192.168.7.8 -dMEIZHOU -icmd.sql -o梅州.log"
C:\Program Files\Microsoft SQL Server\100\Tools\Binn\osql.exe" -Usa -P123456 -S192.168.5.8 -dHUIZHOU -icmd.sql -o惠州.log"
C:\Program Files\Microsoft SQL Server\100\Tools\Binn\osql.exe" -Usa -P123456 -S192.168.7.8 -dSHANWEI -icmd.sql -o汕尾.log"
C:\Program Files\Microsoft SQL Server\100\Tools\Binn\osql.exe" -Usa -P123456 -S192.168.5.8 -dDONGGUAN -icmd.sql -o东莞.log"
C:\Program Files\Microsoft SQL Server\100\Tools\Binn\osql.exe" -Usa -P123456 -S192.168.3.8,9888 -dZHONGSHAN -icmd.sql -o中山.log"
C:\Program Files\Microsoft SQL Server\100\Tools\Binn\osql.exe" -Usa -P123456 -S192.168.7.8 -dJIANGMEN -icmd.sql -o江门.log"
C:\Program Files\Microsoft SQL Server\100\Tools\Binn\osql.exe" -Usa -P123456 -S192.168.7.8 -dYANGJIANG -icmd.sql -o阳江.log"
C:\Program Files\Microsoft SQL Server\100\Tools\Binn\osql.exe" -Usa -P123456 -S192.168.5.8 -dZHANJIANG -icmd.sql -o湛江.log"
C:\Program Files\Microsoft SQL Server\100\Tools\Binn\osql.exe" -Usa -P123456 -S192.168.5.8 -dMAOMING -icmd.sql -o茂名.log"
C:\Program Files\Microsoft SQL Server\100\Tools\Binn\osql.exe" -Usa -P123456 -S192.168.5.8 -dZHAOQING -icmd.sql -o肇庆.log"
C:\Program Files\Microsoft SQL Server\100\Tools\Binn\osql.exe" -Usa -P123456 -S192.168.7.8 -dQINGYUAN -icmd.sql -o清远.log"
C:\Program Files\Microsoft SQL Server\100\Tools\Binn\osql.exe" -Usa -P123456 -S192.168.7.8 -dCHAOZHOU -icmd.sql -o潮州.log"
C:\Program Files\Microsoft SQL Server\100\Tools\Binn\osql.exe" -Usa -P123456 -S192.168.7.8 -dJIEYANG -icmd.sql -o揭阳.log"
C:\Program Files\Microsoft SQL Server\100\Tools\Binn\osql.exe" -Usa -P123456 -S192.168.7.8 -dYUNFU -icmd.sql -o云浮.log pause
解释: -U 用户名
-P 密码
-S IP+端口
-d 库名称
-i cmd.sql (待执行的sql语句文件)
-o 日志.log
2、再新建一个文本,添加待执行的SQL语句,如下示例,保存为cmd.sql (cmd.sql可以随意命名,但必须与-i cmd.sql 命名参数保持一致)
update Testset Name = 'EminemJk'where ID = 1
3、运行*.bat文件,即执行cmd.sql内的SQL,很快捷。