新手请教一个问题:跟游标和存储过程有关
时间:2011-12-12
来源:互联网
创建学生表:
create table student(
stuid int identity(1001,1),
stuname char(10),
stuclass char(15)
)
插入数据:
insert into student values('tracy','计算机0903班')
insert into student values('kobe','计算机0902班')
insert into student values('lucy','计算机0901班')
insert into student values('lily','软件0903班')
insert into student values('tom','网络0903班')
select *from student
创建存储过程用于删除student表中的第n行数据:
create proc del_rows @n int
as
begin
declare pp cursor local for select *from student
declare @i int
open pp
set @i=1
while @i<@n
begin
fetch next from pp
set @i=@i+1
end
delete student where current of pp
close pp
deallocate pp
end
小弟对于其中是怎么实现删除第n行的有点不理解。求高人在语句后面给我添加一下注释
create table student(
stuid int identity(1001,1),
stuname char(10),
stuclass char(15)
)
插入数据:
insert into student values('tracy','计算机0903班')
insert into student values('kobe','计算机0902班')
insert into student values('lucy','计算机0901班')
insert into student values('lily','软件0903班')
insert into student values('tom','网络0903班')
select *from student
创建存储过程用于删除student表中的第n行数据:
create proc del_rows @n int
as
begin
declare pp cursor local for select *from student
declare @i int
open pp
set @i=1
while @i<@n
begin
fetch next from pp
set @i=@i+1
end
delete student where current of pp
close pp
deallocate pp
end
小弟对于其中是怎么实现删除第n行的有点不理解。求高人在语句后面给我添加一下注释
作者: TravyLee 发布时间: 2011-12-12
游标扫描 每次扫描一行 直到第N行。
作者: fredrickhu 发布时间: 2011-12-12
SQL code
[code=SQL]create proc del_rows @n int as begin declare pp cursor local for select * from student declare @i int open pp set @i=1 --初始值为1 while @i<@n --判断是否小于N 满足条件接着运行 begin fetch next from pp --扫描下一个 set @i=@i+1 --@I递增1 end delete student where current of pp --当不满足@i<@n的条件的时候删除这行数据 close pp --关闭游标 deallocate pp --删除游标 end[/code]
作者: fredrickhu 发布时间: 2011-12-12
while @i<@n
begin
fetch next from pp
set @i=@i+1
end
能不能把这几句给我解释一下?
begin
fetch next from pp
set @i=@i+1
end
能不能把这几句给我解释一下?
作者: TravyLee 发布时间: 2011-12-12
汗 难道我写得不清楚?
作者: fredrickhu 发布时间: 2011-12-12
相关阅读 更多
热门阅读
-
office 2019专业增强版最新2021版激活秘钥/序列号/激活码推荐 附激活工具
阅读:74
-
如何安装mysql8.0
阅读:31
-
Word快速设置标题样式步骤详解
阅读:28
-
20+道必知必会的Vue面试题(附答案解析)
阅读:37
-
HTML如何制作表单
阅读:22
-
百词斩可以改天数吗?当然可以,4个步骤轻松修改天数!
阅读:31
-
ET文件格式和XLS格式文件之间如何转化?
阅读:24
-
react和vue的区别及优缺点是什么
阅读:121
-
支付宝人脸识别如何关闭?
阅读:21
-
腾讯微云怎么修改照片或视频备份路径?
阅读:28