博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
sql 循环语句几种方式
阅读量:5093 次
发布时间:2019-06-13

本文共 1679 字,大约阅读时间需要 5 分钟。

--第一
declare @orderNum varchar(255)
create table #ttableName(id int identity(1,1),Orders varchar(255))
declare @n int,@rows int
insert #ttableName(orders) select orderNum from pe_Orders where orderId<50
--select @rows=count(1) from pe_Orders
select @rows =@@rowcount 
set @n=1 
while @n<=@rows
begin
select @orderNum=OrderNum from PE_Orders where OrderNum=(select Orders from #ttableName where id=@n)
print (@OrderNum)
select @n=@n+1
end
drop table #ttableName
--第二
declare @orderN varchar(50)--临时变量,用来保存游标值
declare y_curr cursor for --申明游标 为orderNum
select orderNum from pe_Orders where orderId<50
open y_curr --打开游标
fetch next from Y_curr into @orderN ----开始循环游标变量
while(@@fetch_status=0)---返回被 FETCH  语句执行的最后游标的状态,而不是任何当前被连接打开的游标的状态。
begin
print (@orderN)
update pe_Orders set Functionary+@orderN where orderNum=@orderN --操作数据库
fetch next from y_curr into @orderN --开始循环游标变量
end
close y_curr--关闭游标
deallocate y_curr --释放游标
--第三
select orderNum,userName,MoneyTotal into #t from pe_Orders po 
DECLARE @n int,@error int
--set @n=1 
set @error=0
BEGIN TRAN --申明事务
declare @orderN varchar(50),@userN varchar(50) --临时变量,用来保存游标值
declare y_curr cursor for  --申明游标 为orderNum,userName
select orderNum,userName from PE_Orders where Orderid<50
open y_curr
fetch next from y_curr into @orderN,@userN
while @@fetch_status = 0
BEGIN
select isnull(sum(MoneyTotal),0),orderNum from #t where username=@userN
-- set @n=@n+1
set @error=@error+@@error--记录每次运行sql后 是否正确  0正确
fetch next from y_curr into @orderN,@userN
END
IF @error=0
BEGIN
commit tran --提交
END
ELSE
BEGIN
ROLLBACK TRAN --回滚
END
close y_curr
deallocate y_curr
DROP TABLE #t

转载于:https://www.cnblogs.com/Luouy/archive/2012/05/11/2495394.html

你可能感兴趣的文章
【转载】html中object标签详解
查看>>
hdu-1022-栈
查看>>
奥坎姆剃刀定律
查看>>
改善C#公共程序类库质量的10种方法
查看>>
AIO 开始不定时的抛异常: java.io.IOException: 指定的网络名不再可用
查看>>
春天的事务管理,图解事务传播行为
查看>>
android 在fragment中获取界面的UI组件
查看>>
MyBaits动态sql语句
查看>>
[苦逼程序员的成长之路]1、飞扬小鸟
查看>>
零基础自学用Python 3开发网络爬虫(二): 用到的数据结构简介以及爬虫Ver1.0 alpha...
查看>>
修改JEECG项目浏览器标题
查看>>
HDU4405(期望DP)
查看>>
Linux下svn的部署
查看>>
tempdb页面分配争用问题
查看>>
P1403 [AHOI2005]约数研究
查看>>
JSTL核心标签库详解
查看>>
【JavsScript】作用域链
查看>>
JDBC插入百万数据,不到5秒!
查看>>
[ZJOI2008]生日聚会
查看>>
Git
查看>>