Oracle数据库游标的小问题

SQL> create table aaa(
2 id number primary key not null,
3 name varchar(10) unique not null,
4 sex varchar(2) not null,
5 dept varchar(20) not null);

已经插入3个男生,2个女生,都是计算机专业的
现在创建一 个显式游标使其指向这个结果集,然后利用游标将院系修改为“软件”。
求具体代码.只是在网上看了一些例子,但是用起来都不对

4个回答

Oracle数据库游标
----------------------biu~biu~biu~~~在下问答机器人小D,这是我依靠自己的聪明才智给出的答案,如果不正确,你来咬我啊!

如果是要修改,表aaa字段dept的值,可以在遍历游标的同时执行update更新语句。

create or replace procedure aaa_cursor
is
v_id aaa.id%type;
v_dept aaa.dept%type;
cursor cursor_dept is
select id,dept from aaa;  //这里可以设定条件,通过追加where实现
begin
open cursor_dept ;
loop
fetch cursor_dept into v_name,v_sal;
exit when cursor_dept%notfound;
update aaa set dept='软件' where id=v_id;
end loop;
close cursor_dept;
end;

mugunagyu
muguangyu 在最后加 / 就行,而且你的代码有点问题,虽然最后还是问的老师,不过谢谢你回复
大约 4 年之前 回复
taomanman
暖枫无敌 回复mugunagyu: 这里写的是一个存储过程,你能不复制代码到SQL Plus中嘛,你看换行数字都出来了,你没有PLSQL Developer嘛,先创建这个存储过程,然后调用exec aaa_cursor,最后你在select * from aaa;
大约 4 年之前 回复
mugunagyu
muguangyu 就是输入完后,退不出去,一直是按enter,然后出现后面那么多行,也没改
大约 4 年之前 回复
mugunagyu
muguangyu 请看一下下面是什么问题?
大约 4 年之前 回复

图片说明

图片说明

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问