此 sqlps
实用工具启动一个 Windows PowerShell 2.0 会话,加载并注册了 SQL Server PowerShell 提供程序和 cmdlets。 你可以输入 PowerShell 命令或脚本,它们使用 SQL Server PowerShell 组件来处理 SQL Server 的实例及其对象。
重要
此功能将在Microsoft SQL Server 的未来版本中删除。 避免在新开发工作中使用此功能,并计划修改当前使用此功能的应用程序。 请改用 sqlps
PowerShell 模块。 有关模块 sqlps
的详细信息,请参阅 导入 SQLPS 模块。
语法
sqlps
[ [ [ -NoLogo ][ -NoExit ][ -NoProfile ]
[ -OutPutFormat { Text | XML } ] [ -InPutFormat { Text | XML } ]
]
[ -Command { -
| script_block [ -argsargument_array ]
| string [ command_parameters ]
}
]
]
[ -? | -Help ]
论据
-NoLogo
指定 sqlps
该实用工具在启动时隐藏版权横幅。
-NoExit
指定让sqlps
实用工具在启动命令完成后继续运行。
-NoProfile
指定该sqlps
实用工具不加载用户配置文件。 用户配置文件记录 PowerShell 会话期间常用的别名、函数和变量。
-OutPutFormat { Text | XML }
指定 sqlps
实用工具输出的格式设置为文本字符串(Text)或序列化的 CLIXML 格式(XML)。
-InPutFormat { Text | XML }
指定对实用工具的 sqlps
输入的格式为文本字符串(Text)或序列化的 CLIXML 格式(XML)。
-指令
指定用于运行 sqlps
实用工具的命令。 该 sqlps
实用工具运行命令后会退出,除非同时还指定了 -NoExit。 请不要在 -Command后指定任何其他开关,如果指定,它们将被读作命令参数。
-
-Command- 指定 sqlps
实用工具从标准输入读取数据。
script_block [ -argsargument_array ]
指定要运行的 PowerShell 命令块,块必须用大括号 {} 括起来。 仅当从 PowerShell 或其他实用工具会话中调用时,才能指定Script_blocksqlps
sqlps
。
Argument_array 是 PowerShell 变量的数组,包含 script_block中 PowerShell 命令的参数。
字符串 [ command_parameters ]
指定包含要运行的 PowerShell 命令的字符串。 使用格式“&{command
}”。 引号指示字符串,调用运算符(>)导致 sqlps
实用工具运行命令。
[ -? | -帮助 ]
显示实用工具选项的 sqlps
语法摘要。
注解
该 sqlps
实用工具启动 PowerShell 环境(PowerShell.exe),并加载 SQL Server PowerShell 模块。 该模块(也称为 sqlps
)加载并注册这些 SQL Server PowerShell 管理单元:
Microsoft.SqlServer.Management.PSProvider.dll
实现 SQL Server PowerShell 提供程序及其相关的 cmdlet,例如 Encode-SqlName 和 Decode-SqlName。
Microsoft.SqlServer.Management.PSSnapin.dll
实现 Invoke-Sqlcmd 和 Invoke-PolicyEvaluation 命令。
可以使用该 sqlps
实用工具执行以下作:
以交互方式运行 PowerShell 命令。
运行 PowerShell 脚本文件。
运行 SQL Server cmdlets。
使用 SQL Server 提供程序路径可以浏览 SQL Server 对象的层次结构。
默认情况下,该 sqlps
实用工具在脚本执行策略设置为 “受限”的情况下运行。 这样可以防止运行任何 PowerShell 脚本。 可以使用 Set-ExecutionPolicy cmdlet 来启用运行签名的脚本或任意脚本。 请仅运行来自受信任源的脚本,并通过使用适当的 NTFS 权限来保证所有输入和输出文件的安全。 有关启用 PowerShell 脚本的详细信息,请参阅 Running Windows PowerShell Scripts(运行 Windows PowerShell 脚本)。
SQL Server 2008 和 SQL Server 2008 R2 中的实用工具版本 sqlps
作为 Windows PowerShell 1.0 微型 shell 实现。 微型外壳程序具有某些限制,例如不允许用户加载不是由微型外壳程序所加载的管理单元。 这些限制不适用于已更改为使用该 sqlps
模块的 SQL Server 2012 和更高版本的实用工具。
例子
答: 以默认的交互模式运行 sqlps 实用工具,不显示版权标志
sqlps -NoLogo
B. 从命令提示符下运行 SQL Server PowerShell 脚本
sqlps -Command "&{.\MyFolder.MyScript.ps1}"
C. 从命令提示符下运行 SQL Server PowerShell 脚本,并在脚本完成后继续运行
sqlps -NoExit -Command "&{.\MyFolder.MyScript.ps1}"