OSQL 命令行工具

时间:2022-07-17 17:38:44

1.什么是 Osql?
  osql 工具是一个 Microsoft Windows 32 命令提示符工具,您可以使用它运行 Transact-SQL 语句和脚本文件

。osql 工具使用 ODBC 数据库应用程序编程接口 (API) 与服务器通讯。

  在开始->运行 中键入cmd,使用 "OSQL -?"命令,就可以显示osql命令行的帮助。
  注意:osql 工具的选项列表是区分大小的,在使用时注意。

2.使用osql
  一般情况下,可以这样使用 osql 工具:
  a.用户通过使用命令提示符时相似的方式交互输入 Transact-SQL 语句。
  b.用户提交 osql 作业,方式是:
  指定单个要运行的 Transact-SQL 语句或者是Transact-SQL 语句脚本文件。

下面将详细介绍每一种方法:
(1)指定单个 Transact-SQL 语句

请键入与下面这一个类似的命令:

osql -E -q "Transact-SQL statement"

其中 -E 表示使用 Microsoft Windows NT 身份验证。
而-q 表示运行 Transact-SQL 语句,但是在查询结束时不退出 osql。
如要运行 Transact-SQL 语句并退出 osql,请使用 -Q 参数来代替 -q。

(2)将该工具指向一个脚本文件,步骤:
 a.创建一个包含一批 Transact-SQL 语句的脚本文件(如 myQueries.sql)。
 b.打开命令提示符,键入与下面类似的一个命令,然后按 ENTER 键:

osql -E -i input_file

其中input_file 是脚本文件及其完整路径。例如,如果脚本文件 myQueries.sql 在 C:\Queries 文件夹中,

请将参数 input_file 替换为 C:\Queries\myQueries.sql。

该脚本文件的运行结果将出现在控制台窗口中。
如果您想将运行结果定向到一个文件,请向上述命令中添加 -o output_file 参数。例如:

osql -E -i input_file -o output_file

其中output_file 是输出文件及其完整路径。

如想消除输出结果中的编号和提示符号,请向上述命令中添加 -n 选项。例如:

osql -E -i input_file -o output_file -n

在操纵数据之前,设置当前工作数据库是必须的,这可以使用USE语句来实现,后接GO命令.

命令行成功后将返回带有编号的批提示符。这是OSQL说“请输入第一个命令”的方式.

每个提示符都会按顺序列出来,直到输入了GO命令为止。
从这开始,所有在批处理指令之前的命令就会被执行,新的批处理又会从行1开始。任何SQL语句都可以在OSQL
提示符下执行。

请注意在GO命令发出后,批处理的行号是如何从头开始的。

要关闭OSQL工具,使用EXIT命令。
如果在命令行窗口中执行了OSQL,这个命令会把控制权交回给命令行提示符窗口。EXIT命令也可用于关闭命令
行提示符窗口。