`

一个存储过程

Go 
阅读更多
/*设计一个存储过程,输入年度和雇员号两个参数,得到该雇员、指定年度的订*/
/*单总数量(返回参数)以及订单的详细内容(记录集)*/
/*********** 第一步、创建存储过程 ***********/
Create Procedure EmployeeSalesByYear
@Year int,
@EmployeeID int,
@SalesCount int output   --输出参数,后面有output关键字
As
Begin
   --查询指定雇员指定年度的订单数量,返回的是一个整数值,同时将该值赋给@SalesCount
Select @SalesCount=count(*) From Orders
Where EmployeeId=@EmployeeID and Year(OrderDate)=@Year

   --查询指定雇员指定年度的订单明细,返回的是一个结果集
Select Orders.*,ProductID,UnitPrice,Quantity,Discount
From Orders,[Order Details]
Where Orders.OrderID=[Order Details].OrderID
    and EmployeeId=@EmployeeID and Year(OrderDate)=@Year
End
Go

/*********** 第二步、执行存储过程 ***********/
--定义一个变量,存储返回的订单数量
declare @ThisSalesCount int

--执行存储过程,等到记录集和返回值
exec EmployeeSalesByYear 1997,2,@SalesCount= @ThisSalesCount Output

--将返回值输出到屏幕上,看看结果是否正确(选择查询窗口左下角的“消息”标签)
print cast(@ThisSalesCount as varchar(12))

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics