zoukankan      html  css  js  c++  java
  • 执行Oracle的insert或update语句时同时返回插入或更新后的字段值

    执行Oracle的insert或update语句时同时返回插入或更新后的字段值

      出处: http://wxy0327.itpub.net/post/16888/94033 

        这是一个很有用并常用的语法,可以少一次查询。

    insert:

    CREATE SEQUENCE seq_emp;
    SET SERVEROUTPUT ON
    DECLARE   x emp.empno%TYPE; BEGIN   INSERT INTO emp   (empno, ename)   VALUES   (seq_emp.NEXTVAL, 'Morgan')   RETURNING empno   INTO x;
      dbms_output.put_line(x); END; /
    DECLARE   x urowid; BEGIN   INSERT INTO emp   (empno, ename)   VALUES   (seq_emp.NEXTVAL, 'Morgan')   RETURNING rowid   INTO x;
      dbms_output.put_line(x); END; /

     

    update:

    conn hr/hr
      var bnd1 NUMBER   var bnd2 VARCHAR2(30)   var bnd3 NUMBER
      UPDATE employees   SET job_id ='SA_MAN', salary = salary + 1000, department_id = 140   WHERE last_name = 'Jones'   RETURNING salary*0.25, last_name, department_id   INTO :bnd1, :bnd2, :bnd3;
      print bnd1   print bnd2   print bnd3 conn hr/hr
      variable bnd1 NUMBER
      UPDATE employees   SET salary = salary * 1.1   WHERE department_id = 100   RETURNING SUM(salary) INTO :bnd1;
      print bnd1

  • 相关阅读:
    c# 解决读取Excel混合文本类型,数据读取失败的解决方法
    c#中的常用ToString()方法总结
    vsts
    RSA加密解密
    odbc连接数据库
    SerialPort
    C# Winform下载文件并显示进度条
    c# 面试题
    SQL Server 存储过程
    mysql 事务处理
  • 原文地址:https://www.cnblogs.com/simbadan/p/2725620.html
Copyright © 2011-2022 走看看