SqlServer--bat批处理执行sql语句1-osql

首先需要知道,此处使用的批处理命令是osql ,如果安装了SqlServer,目录类似:

D:Program FilesMicrosoft SQL Server100ToolsBinn

脚本:

cd D:Program FilesMicrosoft SQL Server100ToolsBinn
d:
osql -S ip -d dbname-Uusername-P password -iC:Users yzrjDesktopSQLQuery9.sql -oC:Users yzrjDesktopSQLQuery9.txt

以上脚本,切换到osql所在的目录之后,执行osql命令。

通过 OSQL -? 查看相关参数:

D:Program FilesMicrosoft SQL Server100ToolsBinn>OSQL -?
Microsoft (R) SQL Server 命令行工具
版本 10.50.1600.1 NT x64
版权所有 (c) Microsoft Corporation。保留所有权利。
注意: osql 并不支持 SQL Server 2008 R2的所有功能。
请使用 sqlcmd。有关详细信息,请参阅 SQL Server 联机丛书。
用法: 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
  [-? 显示语法摘要]

此处使用的主要是

-S 服务器ip 

-d 数据库名称

-U 连接用户名

-P 用户的密码

-i 执行的sql文件

-o sql语句输出的结果文件

备注:

SQLQuery9.sql 文件的内容是:

select * from t_0000000001 

因此,输出的 SQLQuery9.txt 的内容是查询结果集。

原文地址:https://www.cnblogs.com/simadi/p/7754225.html