如何创建存储过程 (SQL Server Management Studio)

本主题介绍如何使用 SQL Server Management Studio 中的对象资源管理器创建 Transact-SQL 存储过程,并提供一个在 AdventureWorks2008R2 数据库中创建简单存储过程的示例。

创建存储过程

  1. 对象资源管理器中,连接到某个数据库引擎实例,再展开该实例。

  2. 展开**“数据库”、存储过程所属的数据库以及“可编程性”**。

  3. 右键单击**“存储过程”,再单击“新建存储过程”**。

  4. 在**“查询”菜单上,单击“指定模板参数的值”**。

  5. 在**“指定模板参数的值”对话框中,“值”列包含参数的建议值。接受这些值或将其替换为新值,再单击“确定”**。

  6. 在查询编辑器中,使用过程语句替换 SELECT 语句。

  7. 若要测试语法,请在**“查询”菜单上,单击“分析”**。

  8. 若要创建存储过程,请在**“查询”菜单上,单击“执行”**。

  9. 若要保存脚本,请在**“文件”菜单上,单击“保存”。接受该文件名或将其替换为新的名称,再单击“保存”**。

安全说明安全说明

验证所有用户的输入。验证前请勿连接用户输入。绝对不要执行根据尚未验证的用户输入构造的命令。有关详细信息,请参阅SQL 注入

创建存储过程的示例

  1. 对象资源管理器中,连接到某个数据库引擎实例,再展开该实例。

  2. 依次展开**“数据库”、AdventureWorks2008R2 数据库和“可编程性”**。

  3. 右键单击**“存储过程”,再单击“新建存储过程”**。

  4. 在**“查询”菜单上,单击“指定模板参数的值”**。

  5. 在**“指定模板参数的值”**对话框中,输入下列所示的参数值。

    参数

    Author

    您的姓名

    Create Date

    今天的日期

    Description

    返回雇员数据。

    Procedure_name

    HumanResources.uspGetEmployees

    @Param1

    @LastName

    @Datatype_For_Param1

    nvarchar(50)

    Default_Value_For_Param1

    NULL

    @Param2

    @FirstName

    @Datatype_For_Param2

    nvarchar(50)

    Default_Value_For_Param2

    NULL

  6. 单击**“确定”**。

  7. 在查询编辑器中,使用以下语句替换 SELECT 语句:

        SELECT FirstName, LastName, JobTitle, Department
        FROM HumanResources.vEmployeeDepartment
        WHERE FirstName = @FirstName AND LastName = @LastName;
    
  8. 若要测试语法,请在**“查询”菜单上,单击“分析”**。如果返回错误消息,则请将这些语句与上述信息进行比较,并视需要进行更正。

  9. 若要创建存储过程,请在**“查询”菜单上,单击“执行”**。

  10. 若要保存脚本,请在**“文件”菜单上,单击“保存”。输入新的文件名,再单击“保存”**。

  11. 若要运行存储过程,请在工具栏上单击**“新建查询”**。

  12. 在查询窗口中,输入下列语句:

    USE AdventureWorks2008R2;
    GO
    EXECUTE HumanResources.uspGetEmployees @FirstName = N'Diane', @LastName = N'Margheim';
    GO
    
  13. 在**“查询”菜单上,单击“执行”**。