本文主要是介绍使用 sqlcmd 实用工具 (SQL Server Express),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
您可以在命令提示符下使用 sqlcmd 实用工具来管理 Microsoft SQL Server 2008 Express (SQL Server Express) 数据库。若要访问 sqlcmd 使用工具,请依次单击“开始”和“运行”,再键入 sqlcmd.exe。
当运行 sqlcmd 实用工具时,可以使用下列参数。有关特定参数的信息,请参阅 SQL Server 联机丛书中的 sqlcmd 实用工具和教程:sqlcmd 实用工具。
Sqlcmd[-U login id] [-P password] [-S server] [-H hostname] [-E trusted connection] [-d use database name] [-l login timeout][-N encrypt connection] [-C trust the server certificate][-t query timeout] [-h headers] [-s colseparator] [-w screen width][-a packetsize] [-e echo input] [-I Enable Quoted Identifiers][-c cmdend] [-L[c] list servers[clean output]] [-q "cmdline query"][-Q "cmdline query" and exit] [-m errorlevel] [-V severitylevel][-W remove trailing spaces] [-u unicode output][-r[0|1] msgs to stderr] [-i inputfile] [-o outputfile][-f <codepage> | i:<codepage>[,o:<codepage>]][-k[1|2] remove[replace] control characters][-y variable length type display width][-Y fixed length type display width][-p[1] print statistics[colon format]][-R use client regional setting] [-b On error batch abort][-v var = "value"...][-X[1] disable commands[and exit with warning]][-? show syntax summary]
下表概述了可以在 sqlcmd 实用工具中使用的命令。有关这些命令的详细信息,请参阅 SQL Server 2008 联机丛书中的sqlcmd 实用工具。
命令 | 说明 |
---|---|
go [count] | 执行任何缓存的 Transact-SQL 语句。在为 count 指定一个值时,缓存的语句会被作为单个批处理执行count 次。例如,以下示例将对这两个语句执行两次: 复制 1> Use MyDatabase 2> SELECT FirstName, LastName FROM Employee WHERE EmployeeID < 10 3> GO 2 |
-Nencrypt connection | 此开关供客户端用于请求加密连接。此选项等同于 ADO.net 选项 ENCRYPT = true。 |
-Ctrust the server certificate | 该开关供客户端用于将其配置为隐式信任服务器证书且无需验证。此选项等同于 ADO.net 选项 TRUSTSERVERCERTIFICATE = true。 |
reset | 清除语句缓存。 |
ed | 允许编辑当前或上一次执行的语句批处理。若要编辑上次执行的批处理,必须在上一批处理执行完之后立即键入该命令。 |
!! <命令> | 执行操作系统命令。若要执行操作系统命令,请用两个感叹号 (!!) 开始一行,后面输入操作系统命令。例如,以下命令执行当前驱动器的目录清单: 复制 1> !! dir |
quit -或- exit | 立即退出 sqlcmd。 |
exit [(statement)] | 允许使用 SELECT 语句的结果作为 sqlcmd 的返回值。 如果括号中没有任何内容,则 exit() 语句会执行批处理中该语句前的所有内容,然后退出,且不返回任何值。 也可以包含 exit 参数,使其作为批处理文件的一部分。例如: 复制 sqlcmd /Q "exit(SELECT COUNT(*) FROM '%1')" |
:r <filename> | 将来自 filename 所指定文件的 Transact-SQL 语句和 sqlcmd 命令分析到语句缓存中。当发出批处理终止符 (go) 之后,将读取并执行该文件。 |
:serverlist | 列出在本地配置的服务器和在网络上进行广播的服务器的名称。 |
:list | 打印语句缓存的内容。 |
:listvar | 显示当前设置的脚本变量列表。 |
:error <destination>[ filename | STDERR | STDOUT] | 将所有错误输出重定向到 filename 指定的文件、STDERR 流或 STDOUT 流。默认情况下,错误输出将发送到 STDERR。 |
:out <destination>[ filename | STDERR | STDOUT ] | 将所有查询结果重定向到 filename 指定的文件、STDERR 流或 STDOUT 流。默认情况下,输出将发送到 STDOUT。 |
:perftrace <destination>[ filename | STDERR | STDOUT ] | 将所有性能跟踪信息重定向到 filename 指定的文件、STDERR 流或 STDOUT 流。默认情况下,性能跟踪输出将发送到 STDOUT。 |
:connect server_name[\instance_name] [-t timeout] [-U username [-P password] ] | 连接到 SQL Server 实例并关闭当前连接。 |
:on error [ exit | ignore ] | 设置在脚本或批处理执行过程中发生错误时要执行的操作。 使用 exit 选项时,sqlcmd 退出,并显示相应的错误值。 使用 ignore 选项时,sqlcmd 会忽略错误,并继续执行批处理或脚本。默认情况下,会打印错误消息。 |
:help | 列出 sqlcmd 命令以及每个命令的简短说明。 |
当连接到 SQL Server Express 服务器时,必须指定服务器名称,并且如果 SQL Server Express 安装在命名实例中,还必须指定实例名。默认情况下,sqlcmd 使用 Windows 身份验证。如果要使用 SQL Server 身份验证连接到 SQL Server Express 服务器,则还必须提供连接到 SQL Server Express 服务器所需的登录信息。例如,如果要连接到名为 server1 的服务器上的默认 SQL Server Express 安装,则可能使用下列参数:
sqlcmd -S server1\SQLExpress -U SqlUserAccount -P SqlPassword
注意 |
---|
如果使用 -P 参数,则密码在命令提示符下以纯文本形式出现。如果省略 -P 参数,则系统将提示您输入密码。您所输入的文本将会被隐藏。 |
如果使用运行 SQL Server Express 的服务器上受信任的用户帐户进行登录,则可以省略 -U 和-P 参数:
sqlcmd -S server1\SQLExpress
注意 |
---|
-E 参数指定受信任连接。这是 sqlcmd 的默认设置,因此可以省略-E 参数。 |
示例
以下示例显示如何使用 sqlcmd 实用工具来连接到服务器 SqlServer1 上名为 SqlExpress 的 SQL Server Express 实例:
Sqlcmd -S SqlServer1\SqlExpress
连接之后,您可以发出其他命令来管理该实例。例如,下列命令将显示当前已安装的所有数据库。这样可以方便地找到已附加的 SQL Server Express 数据库的逻辑名称:
SELECT name from sys.databases Go
这篇关于使用 sqlcmd 实用工具 (SQL Server Express)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!