Oracle二:insert delete update returning into句式

功能:插入,删除,更新返回操作的记录字段,赋值到变量。
注意:更新,删除多条记录时需要把返回的记录赋值到复合变量数组中


--插入一条记录并返回赋值给变量
declare
  row_id rowid;
  info  varchar2(40);
begin
  insert into scott.dept values(60,'财务室','河南')
  returning rowid,dname || ':' || to_char(deptno) || ':' || loc
  into row_id,info;
  dbms_output.put_line(info);
end;



--更新一条记录并返回赋值给变量
declare
  row_id rowid;
  info  varchar2(40);
begin
  update scott.dept set deptno = 51 where dname = '财务室'
  returning rowid,dname || loc
  into row_id,info;
end;


--删除一条记录并返回赋值给变量
declare
  row_id rowid;
  info  varchar2(40);
begin 
  delete scott.dept where dname = '财务室'
  returning rowid, dname || loc
  into row_id,info;
end;

猜你喜欢

转载自supanccy2013.iteye.com/blog/2162351