SQL Server 中的存储过程

一:初步了解存储过程的使用

创建一个简单的存储过程

1 CREATE PROC spEmployee
2 AS
3    SELECT * FROM HumanResources.Employee;

 

执行这个存储过程:

EXEC spEmployee;

 

删除存储过程:

1 --删除存储过程
2 DROP PROC spEmployee

 

二:参数化存储过程

 

带参数初步体验:

1 CREATE PROC spEmployeeByName
2     @LastName  nvarchar(50)  --定义一个参数   类型为 nvarchar
3 AS
4 
5 SELECT p.LastName, p.FirstName, e.JobTitle, e.HireDate
6 FROM Person.Person p
7 JOIN HumanResources.Employee e
8     ON p. BusinessEntityID = e.BusinessEntityID  --从两张表中选取信息
9 WHERE p.LastName LIKE @LastName + '%';   --存储过程的 条件

 

执行带参数的存储过程:

EXEC spEmployeeByName 'Dobney';  --直接附加参数的值即可

 

 

给参数提供一个默认值(为了参数是可选的):

CREATE PROC spEmployeeByName
@LastName nvarchar(50) = NULL   --将参数 LastName 的值 赋值为 NULL
AS
IF @LastName IS NOT NULL   -- 做条件判断
    SELECT p.LastName, p.FirstName, e.JobTitle, e.HireDate
    FROM Person.Person p
    JOIN HumanResources.Employee e
        ON p.BusinessEntityID = e.BusinessEntityID
    WHERE p.LastName LIKE @LastName + '%';  --注意这句
ELSE
    SELECT p.LastName, p.FirstName, e.JobTitle, e.HireDate
    FROM Person.Person p
    JOIN HumanResources.Employee e
        ON p.BusinessEntityID = e.BusinessEntityID;

 

创建输出参数:

 

 

 

 

posted @ 2013-08-28 22:12  难念的经whh  阅读(187)  评论(0编辑  收藏  举报