SQLserver中sqlcmd命令行工具的使用方法资料.docx
- 文档编号:423972
- 上传时间:2022-10-10
- 格式:DOCX
- 页数:14
- 大小:26.59KB
SQLserver中sqlcmd命令行工具的使用方法资料.docx
《SQLserver中sqlcmd命令行工具的使用方法资料.docx》由会员分享,可在线阅读,更多相关《SQLserver中sqlcmd命令行工具的使用方法资料.docx(14页珍藏版)》请在冰豆网上搜索。
SQLserver中sqlcmd命令行工具的使用方法资料
SQLserver中sqlcmd命令行工具的使用方法
SQLserver2008在C:
\ProgramFiles\MicrosoftSQLServer\100\Tools\Binn,有的可能在
C:
\ProgramFiles\MicrosoftSQLServer\90\Tools\Binn,你自己找找。
然后看看PATH路径中有没有path=
C:
\ProgramFiles\MicrosoftSQLServer\100\Tools\Binn
默认你安装了MSserver就会有。
如果是sql2000的话.那么就用osql连接,如以下例子,osql-SLocalhost-Usa-P123注意大小写"selectcount(*)fromsysobjects"如果在sql2005及以上版本下,把上面脚本的OSQL改为sqlcmd是可以运行的。
我使用2008使用OSQL会出现,用SQLCMD代替的提示:
-----使用工具OSQL:
C:
\Users\Administrator>osql-?
//查看osql用法
C:
\Users\Administrator>osql-SZLQ-PC-Usa-P123?
Microsoft(R)SQLServerCommandLineTool
Version10.0.1600.22NTINTELX86
Copyright(c)MicrosoftCorporation. Allrightsreserved.
Note:
osqldoesnotsupportallfeaturesofSQLServer2008.
Usesqlcmdinstead.SeeSQLServerBooksOnlinefordetails.usage:
osql [-Uloginid] [-Ppassword]
[-Sserver] [-Hhostname] [-Etrustedconnection]
[-dusedatabasename][-llogintimeout] [-tquerytimeout]
[-hheaders] [-scolseparator] [-wcolumnwidth]
[-apacketsize] [-eechoinput] [-IEnableQuotedIdentifiers]
[-Llistservers] [-ccmdend] [-DODBCDSNname]
[-q"cmdlinequery"] [-Q"cmdlinequery"andexit]
[-nremovenumbering] [-merrorlevel]
[-rmsgstostderr] [-Vseveritylevel]
[-iinputfile] [-ooutputfile]
[-pprintstatistics] [-bOnerrorbatchabort]
[-X[1]disablecommands[andexitwithwarning]]
[-OuseOldISQLbehaviordisablesthefollowing]
Autoconsolewidthscaling
Widemessages
defaulterrorlevelis-1vs1
[-?
showsyntaxsummary]
解释:
参数-?
显示 osql 开关的语法摘要。
-L
列出在本地配置的服务器和在网络上广播的服务器的名称。
-U login_id
用户登录 ID。
登录 ID 区分大小写。
-P password
是用户指定的密码。
如果未使用 -P 选项,osql 将提示输入密码。
如果在命令提示符的末尾使用 -P 选项而不带密码,osql 使用默认密码 (NULL)。
密码区分大小写。
OSQLPASSWORD 环境变量使您得以为当前会话设置默认密码。
因此,不需要通过硬编码来在批处理文件中设置密码。
如果没有为 -P 选项指定密码,osql 首先检查 OSQLPASSWORD 变量。
如果未设置值,osql 使用默认密码 (NULL)。
以下示例在命令提示符处设置 OSQLPASSWORD 变量,然后访问 osql 实用工具:
C:
\>SET OSQLPASSWORD=abracadabra
C:
\>osql
-E
使用信任连接而不请求密码。
-S server_name[\instance_name]
指定要连接的 Microsoft® SQL Server™ 2000 实例。
在该服务器上指定 server_name 以连接到 SQL Server 的默认实例。
在该服务器上指定 server_name\instance_name 以连接到一个已命名的 SQL Server 2000 的实例。
如果未指定服务器,osql 将连接到本地计算机上的 SQL Server 默认实例。
从网络上的远程计算机执行 osql 时,此选项是必需的。
-H wksta_name
是工作站名称。
工作站名称存储在 sysprocesses.hostname 中并由 sp_who 显示。
如果未指定此选项,则采用当前计算机名称。
-d db_name
启动 osql 时发出一个 USE db_name 语句。
-l time_out
指定 osql 登录超时之前的秒数。
登录到 osql 的默认超时为 8 秒。
-t time_out
指定命令超时之前的秒数。
如果未指定 time_out 值,则命令不会超时。
-h headers
指定要在列标题之间打印的行数。
默认为每一查询结果集打印一次标题。
用 –1 指定不打印标题。
如果使用 -1,则在参数和设置之间一定不能有空格(可以是 -h-1,不能是 -h –1)。
-s col_separator
指定列分隔符字符,其默认为空格。
若要使用对操作系统有特殊含义的字符(例如 | ; & < >),请将该字符用双引号 (") 引起来。
-w column_width
允许用户设置屏幕输出的宽度。
默认为 80 个字符。
当输出行达到其最大屏幕宽度时,会拆分为多个行。
-a packet_size
使您得以请求不同大小的数据包。
packet_size 的有效值在 512 到 65535 之间。
osql 的默认值为服务器的默认值。
数据包大小的增加可以提高较大脚本执行的性能,在这种执行中 GO 命令之间 SQL 语句的数量很重要。
Microsoft 的测试表明 8192 是大容量复制操作典型的最快设置。
可以请求更大的数据包大小,但如果请求不能得到批准,则 osql 默认为服务器的默认值。
-e
回显输入。
-I
设置 QUOTED_IDENTIFIER 连接选项为开启。
-D data_source_name
连接到用 Microsoft SQL Server 的 ODBC 驱动程序定义的 ODBC 数据源。
osql 连接使用该数据源中指定的选项。
说明 该选项不适用于其它驱动程序定义的数据源。
-c cmd_end
指定命令终止符。
默认情况下,通过单独在一行中输入 GO 来终止命令并将其发送到 SQL Server 2000。
在重置命令终止符时,不要使用对操作系统有特殊含义的 Transact-SQL 保留字或字符,无论其前面是否有反斜杠。
-q "query"
启动 osql 时执行查询,但是在查询完成时不退出 osql。
(注意查询语句不应包含 GO)。
如果从批处理文件中发出查询,请使用 %variables 或环境 %variables%。
例如:
SET table = sysobjects
osql /q "Select * from %table%"
将查询用双引号引起来,将查询中嵌入的任何内容用单引号引起来。
-Q "query"
执行查询并立即退出 osql。
将查询用双引号引起来,将查询中嵌入的任何内容用单引号引起来。
-n
从输入行中删除编号和提示符号 (>)。
-m error_level
自定义错误信息的显示。
显示指定的或更高严重级别错误的消息数、状态和错误级别。
不显示严重级别低于指定级别的错误的任何信息。
用 -1 指定与消息一起返回所有标题,即使是信息类的消息。
如果用 –1,则在参数和设置之间不能有空格(可以是 -m-1,不能是 -m -1)。
-r {0 | 1}
将消息输出重定向到屏幕 (stderr)。
如果未指定参数,或指定参数为 0,则仅重定向严重级别为 17 或更高的错误信息。
如果指定参数为 1,则将重定向所有消息输出(包括 "print")。
-i input_file
标识包含一批 SQL 语句或存储过程的文件。
小于 (<) 比较运算符可以用来代替 –i。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- SQLserver sqlcmd 命令行 工具 使用方法 资料