sqlServer批处理SQL文件
8 ? [-n 删除编号方式] ? ? ? ? ?[-m 错误级别]
9 ? [-r 发送到 stderr 的消息] ?[-V 严重级别]
10 ? [-i 输入文件] ? ? ? ? ? ? ?[-o 输出文件]
11 ? [-p 打印统计信息] ? ? ? ? ? ? ? [-b 出错时中止批处理]
12 ? [-X[1] 禁用命令,[退出的同时显示警告]]
13 ? [-O 使用旧 ISQL 行为禁用下列项]
14 ? ? ? <EOF> 批处理
15 ? ? ? 自动调整控制台宽度
16 ? ? ? 宽消息
17 ? ? ? 默认错误级别为 -1 和 1
18 ? [-? 显示语法摘要]
? ?
下面具体讲述如何使用批处理文件执行SQL脚本。
在使用批处理文件执行SQL脚本时,我们只需要用到如下几个参数
序号 参数名 参数解释 示例
1 /u SQLServer用户名 /u sa
2 /p SQLServer密码 /p sa
3 -s 数据库IP -s 192.168.0.45
4 -d 数据库名 -d Northwind
5 -r 发送到 stderr 的消息 (后面不带参数值)
6 -i 输入文件 -i b.sql
7 -o 输出文件 -o a.txt
8 pause 命令暂停标识 (后面不带参数)
编写步骤:
在创建批处理文件之前,首先要创建好两个文件,即:1、要使用批处理文件执行的SQL脚本文件(后缀名为.sql的文件)。2、输出文件(即执行结果文件,后缀名为.txt文件)。
1、 新建批处理文件。先在指定的位置新建一个TXT文件,然后给该文件命名(如命名为aa),再将此文件的后缀名.txt修改成.bat。然后系统会给出如下提示,点击按钮【是】即可。
2、 编写批处理文件。把光标打在新建的批处理文件上,单击鼠标右键,选择以记事本的方式打开批处理文件,即可参照如下例子进行编写。
示例一:(数据库没密码的情况)
OSQL /U sa -S 192.168.0.153 -d NorthWind -r -i a.sql -o a.txt
Pause
示例二:(数据库有密码的情况)
OSQL /U sa /P sa -S 192.168.0.153 -d NorthWind -r -i b.sql -o a.txt
Pause
3、 保存批处理文件。在编写完批处理文件命令后,点击记事本上方工具栏的【文件】---【保存】,或者直接使用快捷键ctrl+s即可。
4、 执行批处理文件。双击批处理文件,点击Enter按钮即可。如果在一个批处理文件中含有多条命令,那么一直惦记Enter按钮,一直到DOS页面显示“按任意键继续...”即可。
5、 查看批处理文件执行结果。双击输出文件,即可看到批处理文件执行结果
?
?
--直接用命令创建2个bat文件,进行批处理
遍历目录中的Sql文件,逐个执行,无需指定具体文件。
创建2个bat文件,CREATE_ALL.bat和CREATE_ALL_File.bat文件。具体内容如下:
CREATE_ALL.bat
ECHO OFF
REM 请设定下面内容
REM SET Driver=D:
REM SET FilePath=D:\MyWork\SQL\
SET User_ID=andy
SET User_PWD=andy
SET ServerName=AndyServer
SET HostName=172.23.9.27
SET DBName=andy
SET Next=------------------------------------------
SET CommandStr=isql -U %User_ID%
SET CommandStr=%CommandStr% -P %User_PWD%
SET CommandStr=%CommandStr% -S %ServerName%
SET CommandStr=%CommandStr% -H %HostName%
SET CommandStr=%CommandStr% -d %DBName%
SET CommandStr=%CommandStr% -i %FilePath%
REM %Driver%
REM CD %FilePath%
REM 执行指定目录中的所有的sql文件
for %%i in (*.sql) do call CREATE_ALL_File.bat %%i
ECHO SQL文件执行完成,请确认上面的执行结果。
pause