游标简单的使用
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
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· AI与.NET技术实操系列:基于图像分类模型对图像进行分类
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 25岁的心里话
· 闲置电脑爆改个人服务器(超详细) #公网映射 #Vmware虚拟网络编辑器
· 零经验选手,Compose 一天开发一款小游戏!
· 通过 API 将Deepseek响应流式内容输出到前端
· AI Agent开发,如何调用三方的API Function,是通过提示词来发起调用的吗