SQL server中sqlcmd命令行工具的使用方法Word文档下载推荐.docx
《SQL server中sqlcmd命令行工具的使用方法Word文档下载推荐.docx》由会员分享,可在线阅读,更多相关《SQL server中sqlcmd命令行工具的使用方法Word文档下载推荐.docx(14页珍藏版)》请在冰豆网上搜索。
[-Vseveritylevel]
[-iinputfile]
[-ooutputfile]
[-pprintstatistics]
[-bOnerrorbatchabort]
[-X[1]disablecommands[andexitwithwarning]]
[-OuseOldISQLbehaviordisablesthefollowing]
<
EOF>
batchprocessing
Autoconsolewidthscaling
Widemessages
defaulterrorlevelis-1vs1
[-?
showsyntaxsummary]
解释:
参数-?
显示
开关的语法摘要。
-L
列出在本地配置的服务器和在网络上广播的服务器的名称。
-U
login_id
用户登录
ID。
登录
ID
区分大小写。
-P
password
是用户指定的密码。
如果未使用
选项,osql
将提示输入密码。
如果在命令提示符的末尾使用
选项而不带密码,osql
使用默认密码
(NULL)。
密码区分大小写。
OSQLPASSWORD
环境变量使您得以为当前会话设置默认密码。
因此,不需要通过硬编码来在批处理文件中设置密码。
如果没有为
选项指定密码,osql
首先检查
变量。
如果未设置值,osql
以下示例在命令提示符处设置
变量,然后访问
实用工具:
C:
\>
SET
OSQLPASSWORD=abracadabra
osql
-E
使用信任连接而不请求密码。
-S
server_name[\instance_name]
指定要连接的
Microsoft&
reg;
SQL
Server&
#8482;
2000
实例。
在该服务器上指定
server_name
以连接到
Server
的默认实例。
server_name\instance_name
以连接到一个已命名的
的实例。
如果未指定服务器,osql
将连接到本地计算机上的
默认实例。
从网络上的远程计算机执行
时,此选项是必需的。
-H
wksta_name
是工作站名称。
工作站名称存储在
sysprocesses.hostname
中并由
sp_who
显示。
如果未指定此选项,则采用当前计算机名称。
-d
db_name
启动
时发出一个
USE
语句。
-l
time_out
指定
登录超时之前的秒数。
登录到
的默认超时为
8
秒。
-t
指定命令超时之前的秒数。
如果未指定
值,则命令不会超时。
-h
headers
指定要在列标题之间打印的行数。
默认为每一查询结果集打印一次标题。
用
–1
指定不打印标题。
如果使用
-1,则在参数和设置之间一定不能有空格(可以是
-h-1,不能是
–1)。
-s
col_separator
指定列分隔符字符,其默认为空格。
若要使用对操作系统有特殊含义的字符(例如
|
;
&
>
),请将该字符用双引号
("
)
引起来。
-w
column_width
允许用户设置屏幕输出的宽度。
默认为
80
个字符。
当输出行达到其最大屏幕宽度时,会拆分为多个行。
-a
packet_size
使您得以请求不同大小的数据包。
packet_size
的有效值在
512
到
65535
之间。
的默认值为服务器的默认值。
数据包大小的增加可以提高较大脚本执行的性能,在这种执行中
GO
命令之间
语句的数量很重要。
Microsoft
的测试表明
8192
是大容量复制操作典型的最快设置。
可以请求更大的数据包大小,但如果请求不能得到批准,则
默认为服务器的默认值。
-e
回显输入。
-I
设置
QUOTED_IDENTIFIER
连接选项为开启。
-D
data_source_name
连接到用
Microsoft
的
ODBC
驱动程序定义的
数据源。
连接使用该数据源中指定的选项。
说明
该选项不适用于其它驱动程序定义的数据源。
-c
cmd_end
指定命令终止符。
默认情况下,通过单独在一行中输入
来终止命令并将其发送到
2000。
在重置命令终止符时,不要使用对操作系统有特殊含义的
Transact-SQL
保留字或字符,无论其前面是否有反斜杠。
-q
"
query"
时执行查询,但是在查询完成时不退出
osql。
(注意查询语句不应包含
GO)。
如果从批处理文件中发出查询,请使用
%variables
或环境
%variables%。
例如:
SET
table
=
sysobjects
/q
Select
*
from
%table%"
将查询用双引号引起来,将查询中嵌入的任何内容用单引号引起来。
-Q
执行查询并立即退出
将查询用双引号引起来,将查询中嵌入的任何内容用单引号引起来。
-n
从输入行中删除编号和提示符号
(>
)。
-m
error_level
自定义错误信息的显示。
显示指定的或更高严重级别错误的消息数、状态和错误级别。
不显示严重级别低于指定级别的错误的任何信息。
-1
指定与消息一起返回所有标题,即使是信息类的消息。
如果用
–1,则在参数和设置之间不能有空格(可以是
-m-1,不能是
-1)。
-r
{0
1}
将消息输出重定向到屏幕
(stderr)。
如果未指定参数,或指定参数为
0,则仅重定向严重级别为
17
或更高的错误信息。
如果指定参数为
1,则将重定向所有消息输出(包括
print"
-i
input_file
标识包含一批
语句或存储过程的文件。
小于
(<
比较运算符可以用来代替
–i。
-o
output_file
标识从
接收输出的文件。
大于
–o。
如果
不是
Unicode
并且没有指定
-u,则
将存储为
OEM
格式。
如果
是
或者指定了
-p
打印性能统计。
-b
指定发生错误时
退出并返回一个
DOS
ERRORLEVEL
值。
当
错误信息的严重级别为
10
或更高时,返回给
变量的值为
1;
否则返回
0。
MS-DOS&
批处理文件可以测试
的值并适当处理错误。
-u
存储为
格式,而不管
为何种格式。
-R
指定在将货币、日期和时间数据转换为字符数据时
驱动程序使用客户端设置。
-O
为与
isql
的早期版本行为匹配,指定停用某些
功能。
下列功能停用:
EOF
批处理
控制台宽度自动调整
宽信息
同时还将
的默认值设置为
–1。
注释
实用工具从操作系统直接启动,并且使用本文中列出的区分大小写的选项。
启动后,osql
接受
语句并将它们交互地发送到
Server。
结果被格式化并显示在屏幕上
(stdout)。
可使用
QUIT
或
EXIT
退出
如果启动
时未指定用户名,SQL
将检查环境变量并使用它们,例如
osqluser=(user)
osqlserver=(server)。
如果未设置环境变量,则使用工作站用户名。
如果未指定服务器,则使用工作站名称。
选项都没有使用,则
将尝试使用
Windows
身份验证模式进行连接。
身份验证基于运行
NT&
用户帐户。
交互性使用
若要交互性使用
osql,请在命令提示符处键入
命令(以及任何选项)。
可以通过键入类似下行的命令,在包含由
执行的查询的文件(例如
Stores.qry)中进行读取:
/U
alma
/P
/i
stores.qry
该文件必须包含命令终止符。
可以通过键入类似下行的命令,在包含查询的文件(例如
Titles.qry)中进行读取并将结果导向另一文件:
titles.qry
/o
titles.res
交互性使用
时,为把操作系统文件读入到命令缓冲区,可使用:
r
file_name。
不要在文件中包含命令终止符;
在完成编辑后交互输入终止符。
举例:
osql-SZLQ-PC-Usa-P123
-q"
selectcount(*)as
count
fromsysobjects"
-----------
1999
(1rowaffected)
//如果想继续执行SQL查询,输入关键字go
osql-SZLQ-PC-Usa-P123-dtest1
select*
from
student"
sno
sname
sage
ssex
----------------------------------------------------------
1张三
1980-01-2300:
00:
00.000男
2李四
1982-12-1200:
00.000女
3张飒
1981-09-0900:
4莉莉
1983-03-2300:
5王弼
1982-06-2100:
6王丽
1984-10-1000:
7刘香
1980-12-2200:
(7rowsaffected)
1>
select*fromteacher
2>
go
//go是立即执行该缓存语句
tno
tname
-------------------------------
1张老师
2王老师
3李老师
4赵老师
5刘老师
6向老师
7李文静
8叶平
(8rowsaffected)
-----使用工具SQLCMD:
使用sqlcmd:
sqlcmd
-?
usage:
Sqlcmd
[-wscreenwidth]
[-L[c]listservers[cleanoutput]]
[-merrorlevel]
[-Vseveritylevel]
[-Wremovetrailingspaces]
[-uunicodeoutput]
[-r[0|1]msgstostderr]
[-ooutputfile]
[-znewpassword]
[-f<
codepage>
|i:
<
[,o:
]][-Znewpasswordandexit]
[-k[1|2]remove[replace]controlcharacters]
[-yvariablelengthtypedisplaywidth]
[-Yfixedlengthtypedisplaywidth]
[-p[1]printstatistics[colonformat]]
[-Ruseclientregionalsetting]
[-vvar="
value"
...]
[-Adedicatedadminconnection]
[-X[1]disablecommands,startupscript,enviromentvariables[andexit]]
[-xdisablevariablesubstitution]
sqlcmd-Szlq-pc-Usa-P123-dtest1
go
sqlcmd-Szlq-pc-Usa-P123
usetest1
selecttop10*fromsc
3>
Changeddatabasecontextto'
test1'
.
cno
score
---------------------------------
1
80
2
86
3
83
4
8