Welcome 微信登录

首页 / 数据库 / MySQL / Oracle:RETURNING 子句

RETURNING 自己通常结合DML 语句使用。(INSERT UPDATE DELETE)使用方法:UPDATE table_name SET expr1
RETURNING column_name
INTO xxxINSERT: 返回的是添加后的值
UPDATE:返回时更新后的值DELETE:返回删除前的值RETURNING 可以再sqlplus 和plsql中使用如果是plsql就如上面的代码,xxx为声明的变量名如果是sqlplus,xxx 可以为变量,即VARIABLE var_name varchar2(10)
UPDATE table_name SET expr1
RETURNING column_name INTO :var_name;这里的 :var_name  使用的是绑定变量
另外,RETURNING 貌似可以与 RETURN通用INSERT INTO VALUES 支持 RETURNINGINSERT INTO SELECT、 和MERGE 语句 不支持 RETURNING再另外,RETURNING 可以与BULK COLLECT 结合(批量绑定, 另外一个是 FORALL)DECLARE
TYPE table_type IS TABLE OF column_name%TYPE;
v_tab table_type;
BEGIN
  UPDATE table_name
  SET expr1
  RETURNING column_name BULK COLLECT INTO v_tab;  FOR i IN v_tab.first .. v_tab.last LOOP
  DBMS_OUTPUT.put_line( l_tab(i));
END LOOP;COMMIT;
END;
/更多Oracle相关信息见Oracle 专题页面 http://www.linuxidc.com/topicnews.aspx?tid=12本文永久更新链接地址