加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > MsSql教程 > 正文

sql – 在Oracle中插入后返回identity列的值

发布时间:2020-12-12 16:23:30 所属栏目:MsSql教程 来源:网络整理
导读:如何在插入后返回Oracle 12c中标识列(id)的值?似乎大多数方法都使用序列来获取插入项的id. 解决方法 只需使用RETURNING子句即可. 例如 – RETURNING identity_id INTO variable_id; 测试用例 – SQL set serveroutput onSQL CREATE TABLE t 2 (ID NUMBER GEN
如何在插入后返回Oracle 12c中标识列(id)的值?似乎大多数方法都使用序列来获取插入项的id.

解决方法

只需使用RETURNING子句即可.

例如 –

RETURNING identity_id INTO variable_id;

测试用例 –

SQL> set serveroutput on
SQL> CREATE TABLE t
  2    (ID NUMBER GENERATED ALWAYS AS IDENTITY,text VARCHAR2(50)
  3    );

Table created.

SQL>
SQL> DECLARE
  2    var_id NUMBER;
  3  BEGIN
  4    INSERT INTO t
  5      (text
  6      ) VALUES
  7      ('test'
  8      ) RETURNING ID INTO var_id;
  9    DBMS_OUTPUT.PUT_LINE('ID returned is = '||var_id);
 10  END;
 11  /
ID returned is = 1

PL/SQL procedure successfully completed.

SQL>

SQL> select * from t;

        ID TEXT
---------- --------------------------------------------
         1 test

SQL>

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读