关于序列的问题(如何在insert操作后能够知晓insert进去的序列值)

由于我使用了clob数据类型,所以不能一次性地插入数据,我的列中有一个id字段,它使用序列自动增加,这个id字段是我数据行中唯一可以标识不同数据行的字段,其它字段都可以有相同的值。问题是我在insert语句中要设置id字段为序列的nextval,在接下来的过程中要把clob这个数据类型select出来,再写入,问题是,我如何知道我插入的id字段的值呢?
类似于这种sql语句根本就是错的,但我实际上需要的就是这么个逻辑。
SELECT ID FROM INSERT INTO ZK.HTMLS (ID, TITLE ,CONTENT) VALUES (ZK.IDADD.nextval,'title',empty_clob() )
其中content为clob字段,ZK.IDADD为我设置的序列。
---------------------------------------------------------------

IDADD.currval --序列的当前值
---------------------------------------------------------------

declare
v_number number;
begin
INSERT INTO ZK.HTMLS (ID, TITLE ,CONTENT) VALUES (ZK.IDADD.nextval,'title',empty_clob());
select ZK.IDADD.currval into v_number from dual;--当前序列值
---------------------------------------------------------------

前台插入的时候 接着执行 select idaa.currval from dual把结果存放起来,然后再使用。

Published At
Categories with 数据库类
Tagged with
comments powered by Disqus