SQL Server 2008 游标

用sql重来没写过for循环,做数据库操作大多都是成批的做处理,也不太理解这个游标,那篇文章中说右边跟SqlDataReader有点像,仔细想想这话也不算错

来一段从A表往B表中插入B表不存在的数据的存储过程:

CREATE proc my_cur

as
begin

declare @name varchar(50), @pwd varchar(50) --声明变量存放数据

declare my_cursor cursor for

select name,pwd from Users--声明游标
open my_cursor --打开游标

FETCH NEXT FROM my_cursor into @name,@pwd   --读取数据
 while (@@fetch_status=0) --表示状态 int 类型 0 FETCH 语句成功-1 FETCH 语句失败或此行不在结果集中-2 被提取的行不存在

 begin
 if not EXISTS (select TOP(1)* from userbak where  name=@name) --表B中不存在此名字
  insert INTO userbak values(@name,@pwd)
 FETCH NEXT FROM my_cursor into @name,@pwd 
  end

close my_cursor --关闭游标

deallocate my_cursor--释放游标

end

 

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值