游标的用法

create procedure example2 as
--定义变量--
DECLARE @lst_cust_no char(17),@lst_cust_name nvarchar(100),
@lst_cust_manager_id bigint,@lst_manager_name nvarchar(50),
@lst_status varchar(10)

--创建游标,查询cust_no 为KH071207032218637的结果集--
declare lst_cst_customer cursor for
select cust_no,cust_name,cust_manager_id,cust_manager_name,cust_status
from cst_customer
where cust_no ='KH071207032218637'

--打开游标--
open lst_cst_customer
fetch next from lst_cst_customer
into @lst_cust_no,@lst_cust_name,@lst_cust_manager_id,@lst_manager_name,@lst_status

--创建新表--
create table newtable(
lst_cust_no char(17),
lst_cust_name nvarchar(100),
lst_cust_manager_id bigint,
lst_manager_name nvarchar(50),
lst_status varchar(10)
)

while @@fetch_status=0
begin
--向新表存储游标的数据--
insert into newtable(lst_cust_no,lst_cust_name,lst_cust_manager_id,lst_manager_name,lst_status)
values(@lst_cust_no,@lst_cust_name,@lst_cust_manager_id,@lst_manager_name,@lst_status)
fetch next from lst_cst_customer
into @lst_cust_no,@lst_cust_name,@lst_cust_manager_id,@lst_manager_name,@lst_status
end
--关闭游标--
close lst_cst_customer
deallocate lst_cst_customer


exec example2

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值