wocaosinima 发表于 2018-10-22 10:00:09

PL/SQL 中Returning Into的用法

  ORACLE的DML语句中可以指定RETURNING INTO语句。RETURNING INTO语句的使用在很多情况下可以简化PL/SQL编程,少一次select into语句。
  DELETE操作:RETURNING返回的是DELETE之前的结果;
  INSERT操作:RETURNING返回的是INSERT之后的结果;
  UPDATE操作:的RETURNING语句是返回UPDATE操作之后的结果。
  -- Created on 2015/11/5 星期四 by YANCONG-ZHANG
  -- Returning的用法
  DECLARE
  -- Local variables here
  i       INTEGER;
  l_tid   NUMBER;
  l_tname VARCHAR2(200);
  l_tageNUMBER;
  BEGIN
  -- Test statements here
  --返回要插入的数据
  INSERT INTO zyc
  VALUES
  (4, 'wy', 20)
  RETURNING tid, tname, tage INTO l_tid, l_tname, l_tage;
  dbms_output.put_line(l_tid || '-' || l_tname || '-' || l_tage);
  --返回要删除的数据
  DELETE zyc
  WHERE tid = 1
  RETURNING tid, tname, tage INTO l_tid, l_tname, l_tage;
  dbms_output.put_line(l_tid || '-' || l_tname || '-' || l_tage);
  --返回要更新的数据
  UPDATE zyc
  SET tid = 5, tname = 'lwj', tage = 22
  WHERE tid = 2
  RETURNING tid, tname, tage INTO l_tid, l_tname, l_tage;
  dbms_output.put_line(l_tid || '-' || l_tname || '-' || l_tage);
  COMMIT;
  END;

页: [1]
查看完整版本: PL/SQL 中Returning Into的用法