sqlps 实用工具

sqlps 实用工具会启动一个 PowerShell 会话,并加载和注册 SQL Server PowerShell 提供程序和 cmdlets。您可以输入 PowerShell 命令或脚本,它们使用 SQL Server PowerShell 组件来处理 SQL Server 的实例及其对象。

语法

sqlps 
[ [ [ -NoLogo ][ -NoExit ][ -NoProfile ]
      [ -OutPutFormat { Text | XML } ] [ -InPutFormat { Text | XML } ]
  ]
    [ -Command { -
               | script_block [ -args argument_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)。

  • -Command
    指定要使 sqlps 运行的命令。sqlps 实用工具运行命令,然后退出,除非也指定了 -NoExit。请不要在 -Command 后指定任何其他开关,如果指定,它们将被读作命令参数。

  • -
    -Command- 指定 sqlps 从标准输入读取输入。

  • script_block [ -argsargument_array ]
    指定一个要运行的 PowerShell 命令块,必须使用大括号 ({}) 将该块括起来。当从 PowerShellsqlps 调用 sqlps 时,只能指定 Script_block。argument_array 是 PowerShell 变量的数组,包含 script_block 中 PowerShell 命令的参数。

  • string [ command_parameters ]
    指定包含要运行的 PowerShell 命令的字符串。使用格式**“&{command}”**。引号指示一个字符串,调用运算符 (&) 使 sqlps 运行命令。

  • [ -? | -Help ]
    显示 sqlps 选项的语法摘要。

注释

sqlps 实用工具启动 PowerShell 环境 (PowerShell.exe),其中 SQL Server PowerShell 管理单元已加载并注册。SQL Server PowerShell 管理单元如下所示:

  • Microsoft.SqlServer.Management.PSProvider.dll

    实现 SQL Server PowerShell 提供程序和关联的 cmdlets,如 Encode-SqlNameDecode-SqlName

  • Microsoft.SqlServer.Management.PSSnapin.dll

    实现 Invoke-Sqlcmd cmdlet。

可以使用 sqlps 执行下列操作:

  • 以交互方式运行 PowerShell 命令。

  • 运行 PowerShell 脚本文件。

  • 运行 SQL Server cmdlet。

  • 使用 SQL Server 提供程序路径可以浏览 SQL Server 对象的层次结构。

默认情况下,sqlps 在脚本执行策略设置为 Restricted 的情况下运行。这样可以防止运行任何 PowerShell 脚本。您可以使用 Set-ExecutionPolicy cmdlet 来运行已签名脚本或任意脚本。请仅运行来自受信任源的脚本,并通过使用适当的 NTFS 权限来保证所有输入和输出文件的安全。有关启用 PowerShell 脚本的详细信息,请参阅 Running Windows PowerShell Scripts(运行 Windows PowerShell 脚本)。

示例

A. 以默认的交互模式运行 sqlps,并且无版权标志

sqlps -NoLogo

B. 从命令提示符下运行 SQL Server PowerShell 脚本

sqlps -Command "&{.\MyFolder.MyScript.ps1}"

C. 从命令提示符下运行 SQL Server PowerShell 脚本,并在脚本完成后继续运行

sqlps -NoExit -Command "&{.\MyFolder.MyScript.ps1}"