gpt4 book ai didi

oracle - 从标识列的支持序列中获取 nextval

转载 作者:行者123 更新时间:2023-12-05 00:15:37 27 4
gpt4 key购买 nike

我有一个这样声明的表列:

file_id number(10) generated always as identity primary key,

是否有可能以编程方式获得 currval/ nextval从它的支持序列而不实际查看 SYS。表来获取序列的名称,然后使用 execute immediate那个名字?

最佳答案

Is it possible to programatically get a currval/nextval from its backing sequence without actually looking into the SYS



是的,如果你真的需要这样做。您可以简单地在 USER_SEQUENCES 中查找该序列名称。数据字典 View ,或者更好 USER_TAB_IDENTITY_COLS数据字典 View ,并在您的查询中引用它。下面是一个例子:
create table t1(
c1 number generated always as identity primary key
);

insert into t1 values(default);

select * from t1;

C1
-----
1

就我而言,Oracle 为标识列创建的序列名称是 ISEQ$$_92984 .
select "ISEQ$$_92984".nextval from dual;

NEXTVAL
-------
2

insert into t1 values(default);

select * from t1;

C1
---------
1
3

关于oracle - 从标识列的支持序列中获取 nextval,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44112516/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com