创建自定义模板

SQL Server Management Studio 附带许多常见任务的模板,但模板的真正功能在于能够为必须经常创建的复杂脚本创建自定义模板。 在这种做法中,你将创建一个包含少量参数的简单脚本,但模板也可用于长时间重复的脚本。

使用自定义模板

创建自定义模板

  1. 在模板资源管理器中,展开 SQL Server 模板,右键单击 存储过程,指向 “新建”,然后单击“ 文件夹”。

  2. 键入 Custom 作为新模板文件夹的名称,然后按 Enter。

  3. 右键单击 “自定义”,指向“ 新建”,然后单击“ 模板”。

  4. 键入 WorkOrdersProc 作为新模板的名称,然后按 Enter

  5. 右键单击 WorkOrdersProc,然后单击“ 编辑”。

  6. 在“ 连接到数据库引擎 ”对话框中,验证连接信息,然后单击“ 连接”。

  7. 在查询编辑器中,键入以下脚本以创建一个存储过程,用于查找特定部件的订单,在本例中为刀片。 (可以从“教程”窗口复制和粘贴代码。

    USE AdventureWorks20012;  
    GO  
    IF EXISTS (  
    SELECT *   
       FROM INFORMATION_SCHEMA.ROUTINES   
       WHERE SPECIFIC_NAME = 'WorkOrdersForBlade')  
       DROP PROCEDURE dbo.WorkOrdersForBlade;  
    GO  
    CREATE PROCEDURE dbo.WorkOrdersForBlade  
    AS  
    SELECT Name, WorkOrderID   
    FROM Production.WorkOrder AS WO  
    JOIN Production.Product AS Prod  
    ON WO.ProductID = Prod.ProductID  
    WHERE Name = 'Blade';  
    GO  
    
  8. 按 F5 执行此脚本,创建 WorkOrdersForBlade 过程。

  9. 在对象资源管理器中,右键单击服务器,然后单击“ 新建查询”。 此时会打开新的“查询编辑器”窗口。

  10. 在查询编辑器中,键入 EXECUTE dbo。WorkOrdersForBlade,然后按 F5 执行查询。 确认“结果”窗格返回刀片的工作订单列表。

  11. 编辑模板脚本(步骤 7 中的脚本),将产品名称Blade替换为参数product_name<product_namenvarchar(50)name>,在四个位置。

    注释

    参数需要三个元素:要替换的参数的名称、参数的数据类型和参数的默认值。

  12. 现在脚本应如下所示:

    USE AdventureWorks20012;  
    GO  
    IF EXISTS (  
    SELECT *   
       FROM INFORMATION_SCHEMA.ROUTINES   
       WHERE SPECIFIC_NAME = 'WorkOrdersFor<product_name, nvarchar(50), name>')  
       DROP PROCEDURE dbo.WorkOrdersFor<product_name, nvarchar(50), name>;  
    GO  
    CREATE PROCEDURE dbo.WorkOrdersFor<product_name, nvarchar(50), name>  
    AS  
    SELECT Name, WorkOrderID   
    FROM Production.WorkOrder AS WO  
    JOIN Production.Product AS Prod  
    ON WO.ProductID = Prod.ProductID  
    WHERE Name = '<product_name, nvarchar(50), name>';  
    GO  
    
  13. 在“ 文件 ”菜单上,单击“ 保存WorkOrdersProc.sql 以保存模板。

测试自定义模板

  1. 在模板资源管理器中,展开 存储过程,展开 自定义,然后双击 WorkOrderProc

  2. 在“ 连接到数据库引擎 ”对话框中,完成连接信息,然后单击“ 连接”。 此时会打开一个新的查询编辑器窗口,其中包含 WorkOrderProc 模板的内容。

  3. 查询 菜单上,单击 指定模板参数的值。

  4. “替换模板参数”对话框中的product_name输入框中,键入FreeWheel(覆盖默认内容),然后单击“确定”关闭“替换模板参数”对话框,并在查询编辑器中修改脚本。

  5. 按 F5 执行查询,创建过程。

课程中的下一个任务

将脚本另存为项目或解决方案