脚本(数据库引擎)

SQL Server 数据库引擎支持 Microsoft PowerShell 脚本环境,以管理数据库引擎的实例和这些实例中的对象。还可以在与脚本环境非常类似的环境中生成并运行包含 Transact-SQL 和 Xquery 的数据库引擎查询。

SQL Server PowerShell

SQL Server 包含两个可用来实现以下内容的 SQL Server PowerShell 管理单元:

  • SQL Server PowerShell 提供程序,它将 SQL Server 管理对象模型层次结构公开为类似于文件系统路径的 PowerShell 路径。可以使用 SQL Server 管理对象模型类来管理路径的每个节点处表示的对象。

  • 一组执行 SQL Server 命令的 SQL Server cmdlet。其中一个 cmdlet 是 Invoke-Sqlcmd。此 cmdlet 用于运行要与 sqlcmd 实用工具一起运行的数据库引擎查询脚本。

SQL Server 提供了两个用于运行 PowerShell 的功能:

  • 用于启动 PowerShell 和加载 SQL Server 管理单元的 sqlps 实用工具。可以交互方式运行即席 PowerShell 命令。可以使用诸如 .\MyFolder\MyScript.ps1 这样的命令来运行脚本文件。可以在命令提示窗口中启动 sqlps,也可以通过在 SQL Server Management Studio 对象资源管理器树中右键单击节点并选择**“启动 PowerShell”**来启动 sqlps。

  • PowerShell 脚本文件可用作 SQL Server 代理 PowerShell 作业步骤的输入,这些步骤按预订的时间间隔或者作为对系统事件的响应来运行脚本。

数据库引擎查询

数据库引擎查询脚本包含三种类型的元素:

  • Transact-SQL 语言语句。

  • Xquery 语言语句。

  • sqlcmd 实用工具中的命令和变量。

SQL Server 提供了三种用于生成和运行数据库引擎查询的环境:

  • 可以在 SQL Server Management Studio 中的数据库引擎查询编辑器中以交互方式运行和调试数据库引擎查询。可以在一个会话中编写并调试多个语句,然后将所有这些语句保存在一个脚本文件中。

  • 使用 sqlcmd 命令提示实用工具,可以交互方式运行数据库引擎查询,还可以运行现有的数据库引擎查询脚本文件。

数据库引擎查询脚本文件通常是使用数据库引擎查询编辑器在 SQL Server Management Studio 中以交互方式进行编码的。之后,可在下面的某个环境中打开此文件:

  • 使用 SQL Server Management Studio**“文件”/“打开”**菜单在新的数据库引擎查询编辑器窗口中打开此文件。

  • 使用 sqlcmd 实用工具和 -iinput_file 参数运行此文件。

  • 使用 SQL Server PowerShell 脚本中的 Invoke-Sqlcmd cmdlet 和 -QueryFromFile 参数运行此文件。

  • 使用 SQL Server 代理 Transact-SQL 作业步骤按计划的时间间隔或作为对系统事件的响应来运行脚本。

此外,还可以使用 SQL Server 生成脚本向导来生成 Transact-SQL 脚本。可以在 SQL Server Management Studio 对象资源管理器中右键单击对象,然后选择**“生成脚本”菜单项。“生成脚本”**会启动向导,指导您完成创建脚本的过程。有关详细信息,请参阅编写数据库文档和脚本