SQL Server 2005中的SQLCMD工具使用

1、你可以用SQLCMD执行交互式动作
如: 
C:\sqlcmd>sqlcmd 1> SELECT name from sys.databases 2> GO 
你也可以试着键入如下命令,现实服务器列表1>:ServerList 
SERVERS:WUYZ 
1>如果想看其他命令的使用,可以键入:Help /? 

2、执行SQL脚本文件 
你可以在SQLCMD命令上加入参数I来执行SQL脚本文件,例如:C:\sqlcmd>sqlcmd -i test.sql 
上面的I选项允许你执行一个脚本文件,另外,你也可以指定O选项,把命令的输出导出到指定文件,当然,我们也可以在代码中指定输出结果,如下C:\sqlcmd>sqlcmd 1> :out output.txt2> :r test.sql

3、在脚本中使用变量 
SQLCMD支持可以在脚本中接收用户传入的变量信息,如下面语句:SET NOCOUNT ON Select $(Cols) from $(tablename) GO 
上面语句请求2个参数,我们可以通过指定相应的参数信息传给脚本,如下:C:\sqlcmd>sqlcmd -i test.sql -o Output.txt -v cols="name,object_id,create_date" tablename="sys.objects" 
上面语句的用途是:执行TEST.SQL脚本文件,并把输出的信息输出到OUTPUT.TXT文件中,并分别指定了COLS,TABLENAME的参数值 

4、在脚本中设置变量的值 
除了通过外部传入参数的值外,还可以在内部设置参数的值,如下面例子e:\sqlcmd\backuptemplate.sqluse masterbackup database [$(db)] to disk='$(file)'e:\sqlcmd\backupsingle.sql:setvar db msdb:setvar file c:\temp\msdb.bak:r e:\sqlcmd\backuptemplate.sql如果你想知道当然定义了哪些变量,可以使用:listvar命令来显示。主要命令汇总: 
:r filename:ServerList:List:Listvar:Error filename | STDOUT | STDERR:Out filename | STDOUT | STDERR:Perftrace filename | STDOUT | STDERR:Connect server[\instance] [timeout] [user_name[password] ]:On Error [exit | ignore]:SetVar variable value:Help:XML ON | OFF主要环境变量汇总: 
-a SQLCMDPACKETSIZE-d SQLCMDDBNAME-H SQLCMDWORKSTATION-h SQLCMDHEADERS-l SQLCMDLOGINTIMEOUT-m SQLCMDERRORLEVEL-P SQLCMDPASSWORD-S SQLCMSSERVER-s SQLCMDCOLSEP-t SQLCMDSTATTIMEOUT-U SQLCMDUSER-w SQLCMDCOLWIDTH

 感谢原创者的辛勤劳动,希望对您有所帮助,转载请注明原出处。
 您可能对 [SQL Server] 的这些文章也感兴趣:

在SQL Server数据库编写通用数据访问方法
品味SQL Server 2005的几个新功能
获取SqlServer2005表结构(字段,主键,外键,递增,描述)
Sql Server 2005的数据库快照功能使用实践
删除SQLServer查询分析器中的连接记录
SQL Server 2005无法重装问题的解决办法
入侵 SQL Server 数据库系列之:破解SA密码
sqlserver 2005 如何创建分区表
SQL Server数据库检修
SQL Server05 M 3.0 中复制和远程数据访问功能的技术对比