# "ShoppingCartTotal" 存储过程

定义：

"ShoppingCartTotal"存储过程计算给定CartID的全部项目的总美元数。此过程用在购物车页面显示的时候。

定义：

    	CREATE Procedure CMRC_ShoppingCartTotal
    	(
    		@CartID    nvarchar(50),
    		@TotalCost money OUTPUT
    	)
    	AS

    	SELECT
    		@TotalCost = SUM(CMRC_Products.UnitCost * CMRC_ShoppingCart.Quantity)

    	FROM
    		CMRC_ShoppingCart,
    		CMRC_Products

    	WHERE
    		CMRC_ShoppingCart.CartID = @CartID
    	AND
    		CMRC_Products.ProductID = CMRC_ShoppingCart.ProductID

用到的数据库表：

ShoppingCart: ShoppingCart表用来记录用户已经购买的项目。ShoppingCart表的主键是RecordID。CartID是用来识别用户当前登陆身份的字符串。ShoppingCart表和Products表之间是一个多对一的关系。需要说明的是，如果Quantity为空的话，系统将会把其值设为默认值“1”。

Products: Products表含有ASP.NET commerce starter kit 站点里所有产品的全部信息。Products表的主键是ProductID 。需要说明的是产品描述限定在3800个字符之内。