zoukankan      html  css  js  c++  java
  • 游标简单的使用

    GO

    /****** Object:  StoredProcedure [dbo].[UP_Job_UpdatePromotionBeginInfo]    Script Date: 08/19/2014 19:02:11 ******/
    SET ANSI_NULLS ON
    GO
    SET QUOTED_IDENTIFIER ON
    GO


     ALTER PROCEDURE [dbo].[UP_Job_UpdatePromotionBeginInfo]
    AS
        BEGIN 
            DECLARE MyFirstCursor CURSOR
            FOR
                SELECT  a.ProductProID ,
                        a.productItemid ,
                        p.productid ,
                        a.ProPromKindID ,
                        a.PromPrice,
                        --新添加五个字段
                        a.IsLimitBuyStatus,
                        a.LimitBuyPersonalCount,
                        a.LimitBuyCount,
                        a.bDate,
                        a.eDate
                FROM    ProductPro a
                        INNER JOIN productitem item ON a.productitemid = item.productitemid
                        INNER JOIN product p ON p.productid = item.productid
                WHERE   a.BDate <= GETDATE()
                        AND a.EDate >= GETDATE()
                        AND a.[State] = 0

            OPEN MyFirstCursor

            DECLARE @ProductProID INT
            DECLARE @productItemid INT
            DECLARE @productid INT
            DECLARE @ProPromKindID INT
            DECLARE @num INT 
            DECLARE @PromPrice MONEY
            --新添加五个字段
            DECLARE @IsPur INT
            DECLARE @OnePurNum INT
            DECLARE @TotalPurNum INT
            DECLARE @StartDate DATETIME
            DECLARE @LastDate DATETIME
            FETCH NEXT FROM MyFirstCursor INTO @ProductProID, @productItemid, @productid, @ProPromKindID, @PromPrice,@IsPur,@OnePurNum,@TotalPurNum,@StartDate,@LastDate
            WHILE ( @@FETCH_STATUS = 0 )
                BEGIN
       --修改ProductPro 状态     
                    UPDATE  dbo.ProductPro
                    SET     [State] = 1
                    WHERE   ProductProID = @ProductProID

                    UPDATE TOP ( 1 )
                            product
                    SET     ProductAttributeID = @ProPromKindID ,
                            Price = @PromPrice ,
                            Price2 = @PromPrice
                    WHERE   productid = @productid
             
                    UPDATE TOP ( 1 )
                            productitem
                    SET     OldPrice = price ,
                            price = @PromPrice
                            --新添加五个字段
                            ,IsPur=@IsPur
                            ,OnePurNum=@OnePurNum
                            ,TotalPurNum=@TotalPurNum
                            ,StartDate=@StartDate
                            ,LastDate=@LastDate
                    WHERE   productitemid = @productItemid

        --xia 20140218 限制团购数量 改动
                    SELECT  @num = LimitNum
                    FROM    dbo.ProductPro
                    WHERE   ProductProID = @ProductProID
                    UPDATE  productitem
                    SET     StoreNum = @num
                    WHERE   ProductItemID = @productItemid
                   
               
        
             
                --读取下一行
                    FETCH NEXT FROM MyFirstCursor INTO @ProductProID,
                        @productItemid, @productid, @ProPromKindID, @PromPrice
                END
        --关闭游标
            CLOSE MyFirstCursor
        --删除游标
            DEALLOCATE MyFirstCursor
       
      
        END
     
       


     

  • 相关阅读:
    python3+requests库框架设计03-请求重新封装
    python3+requests库框架设计02-封装日志类
    [patl2-001]紧急救援
    [patl1-046]整除光棍
    latex学习
    matlab基础功能实践
    dll注入及卸载实践
    编译原理大作业暂存
    12.24逆向工程上机作业整理
    [poj1703]Find them, Catch them(种类并查集)
  • 原文地址:https://www.cnblogs.com/yexinw/p/3922910.html
Copyright © 2011-2022 走看看