SQL 游标问题!请教!!
17. 使用游标修改数据。
(1) 打开stu cursor游标。
(2) 将姓马的男同学的出生日期的年份加1。
(3) 关闭stu cursor。
use studentsdb
go
declare @date datetime, @name char(8), @sex char(2)
declare stu_c cursor
scroll
for
select 姓名, 性别, 出生日期 from student_info
open stu_c
fetch next from stu_c
into @name, @sex, @date
while @@fetch_status = 0
begin
if @name like '叶%' and @sex = '男'
begin
update student_info
set 出生日期 = dateadd(year, 1, 出生日期)
where @name like '叶%' and @sex = '男'
end
fetch next from stu_c
into @name, @sex, @date
end
close stu_c
deallocate stu_c
select * from student_info
上面的语句结果是修改了所有的数据,请赐教!!
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
自己解决了哈哈
use studentsdb
go
declare @date datetime, @name char(8), @sex char(2)
declare stu_c cursor
scroll
for
select 姓名, 性别, 出生日期 from student_info
open stu_c
fetch next from stu_c
into @name, @sex, @date
while @@fetch_status = 0
begin
if @name like '叶%' and @sex = '男'
begin
update student_info
set 出生日期 = dateadd(year, 1, 出生日期)
where 姓名 = @name
end
fetch next from stu_c
into @name, @sex, @date
end
close stu_c
deallocate stu_c
select * from student_info