在查询语句后加 for update ;
如:
select * from emp for update ;
然后点开这个锁标志,修改某些字段值,再锁上,最后提交就OK了
PL/SQL查询出来的数据要想修改,那就是用:
--可更新的游标:
--for update 说明是为了更新才使用的这个游标
--current of c 是更新当前这条记录,当前游标指向哪条记录上,就更新哪一条
declare
cursor c
is
select * from emp for update;
begin
for v_temp in c loop
if(v_temp.sal < 2000) then
update emp set sal = sal*2 where current of c;
elsif(v_temp.sal = 5000) then
delete from emp where current of c;
end if;
end loop;
commit;
end;
上面程序,如果sal<2000,那么更新emp表的sal字段为sal*2,
如果sal=5000,那么删除这条记录.
查询的结果是个只读的,是不能被修改的。
用update进行修改了再查询出来
查询出来自然不能修改,想修改用update命令
在后面加上 for update