在做医院项目的时候,发现由于客户的原因造成的某些数据错误
由于客户端没有sqlmanagementstudio,如果需要修改数据,需要将数据拷贝出来再做修改
这样比较费时,费事
所以上网找了个bat执行sql文件的例子
首先建立一个bat后缀的文件
内容为
osql -E -S -i sql.sql -o log.txt
其中sql.sql为文件名
log.txt将执行结果记录到log.txt
在sql.sql中书写需要执行的语句
use [DBForTest]
go
update [DBForTest].[dbo].[TableForBat]
Set age = 30
go
[DBForTest]数据库名称
[DBForTest].[dbo].[TableForBat]为表名
age 为列名
简单的语句,学习下
用法: osql [-U 登录 ID] [-P 密码]
[-S 服务器] [-H 主机名] [-E 可信连接]
[-d 使用数据库名称] [-l 登录超时值] [-t 查询超时值]
[-h 标题] [-s 列分隔符] [-w 列宽]
[-a 数据包大小] [-e 回显输入] [-I 允许带引号的标识符]
[-L 列出服务器] [-c 命令结束] [-D ODBC DSN 名称]
[-q "命令行查询"] [-Q "命令行查询" 并退出]
[-n 删除编号方式] [-m 错误级别]
[-r 发送到 stderr 的消息] [-V 严重级别]
[-i 输入文件] [-o 输出文件]
[-p 打印统计信息] [-b 出错时中止批处理]
[-X[1] 禁用命令,[退出的同时显示警告]]
[-O 使用旧 ISQL 行为禁用下列项]
<EOF> 批处理
自动调整控制台宽度
宽消息
默认错误级别为 -1 和 1
[-? 显示语法摘要]