oracle应用之使用sequence批量写数据

网友投稿 737 2022-11-20

oracle应用之使用sequence批量写数据

oracle应用之使用sequence批量写数据

本博客是对之前写的博客​​Oracle批量新增更新数据​​的补充,oracle的知识真是多,其实要学精任何一门知识都是要花大量时间的,正所谓:

学如逆水行舟,不进则退

先介绍oracle sequence的一些知识,sequence顾名思义,就是创建一个序列,这个序列没调一次就会自动加,利用它这个特性,我们显然可以用来写一些批量脚本

(1)sequence用法 oracle sequence的基本语法,这里只做简单介绍

创建sequence

create sequence [序列名]minvalue [最小值,eg:1]nomaxvalue | maxvalue [最大值,eg:9999999]start with [开始值,eg:1]increment by [每次递增:eg:1]nocycle // 一直累加,不循环 no cache |cache [缓存值,eg:10];

更新sequence

update sequence [序列名]minvalue [最小值,eg:1]nomaxvalue | maxvalue [最大值,eg:9999999]increment by [每次递增:eg:1]nocycle // 一直累加,不循环 no cache |cache [缓存值,eg:10];

ps:注意start with不能update,只能drop sequence [序列名],然后再create,序列使用是用序列名.nextval

(2)sequence用于批量 这里举例介绍sequence用于批量更新新增的案例

业务场景:要按某个数值为起点,批量新增数据

先场景sequence:

create sequence seq_t_handle_infominvalue 1maxvalue 999999999999999999999999999start with 624203increment by 1cache 20; commit;

编写批量脚本:

insert into t_stuff_dir_related (seq, dir_seq, create_date, create_man, stuff_id, t_item) select sys_guid(), seq_t_handle_info.nextval, sysdate, 'admin', b.rs_id, a.t_item from t_itm_define a where a.is_valid =1

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:Oracle应用之insert all用法简介
下一篇:Redis系列之HyperLogLog用法简介
相关文章

 发表评论

暂时没有评论,来抢沙发吧~