视频1 视频21 视频41 视频61 视频文章1 视频文章21 视频文章41 视频文章61 推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37 推荐39 推荐41 推荐43 推荐45 推荐47 推荐49 关键词1 关键词101 关键词201 关键词301 关键词401 关键词501 关键词601 关键词701 关键词801 关键词901 关键词1001 关键词1101 关键词1201 关键词1301 关键词1401 关键词1501 关键词1601 关键词1701 关键词1801 关键词1901 视频扩展1 视频扩展6 视频扩展11 视频扩展16 文章1 文章201 文章401 文章601 文章801 文章1001 资讯1 资讯501 资讯1001 资讯1501 标签1 标签501 标签1001 关键词1 关键词501 关键词1001 关键词1501 专题2001
Oracle中序列-sequence的应用
2020-11-09 11:39:05 责编:小采
文档

oracle中没有象Acces中自动编号的字段类型,所以在oracle中要想用一个字段自动增值,还比较麻烦,在此提供给大家一个方法,利用序

Oracle中没有象Acces中自动编号的字段类型,,所以在oracle中要想用一个字段自动增值,还比较麻烦,在此提供给大家一个方法,利用序列,来完成字段的自动增加,下边介绍一下怎么创建序列,使用序列,和删除序列。

1.创建序列--------------create sequence

create sequence Seq_AutoID //所起序列名叫 Seq_AutoID ,需要记住此序列名,以后方可调用

minvalue 1 //最小值从1开始 可以根据自己的需要自定义

maxvalue 9999999999999999999 //序列最大值为 999999999999999999999 可以自定义

start with 1 //从1开始 可以自定义

increment by 1 //递增幅度为 1 可以自定义

cache 20 ; //缓存20

2. 调用序列,完成自动加1 ------------Seq_AutoID.nextval

在向表中插入、更新 数据时可以调用 ,由于自己实际应用中只用到了 插入时调用,所以在此只举此列

EG: insert into table1 ( f1,f2,f3,f4) select f1,f2,f3,Seq_AutoID.nextval from table2 where 条件

当然上边这句是批量插入数据,你也可以用 values值来一条条插入。在此需说明的一点为table1.f4字段需为数值型(number)型。这样,你的table1中的f4字段就是从1开始,以幅度为1来递增的数值了,实现了自动增加的功能。当然幅度可以自己定义。

还有一点是 序列是值是唯一的,只要你一直用nextval来递增的话,在oracle中序列号不会重复.可以用CurrVal来查询当前的序列值,在你nextval后,currval也会跟着变。

3.序列的删除--------------drop sequence

当为了重置序列时,或不需要序列时,可以先删除序列

EG: drop sequence Seq_AutoID;

4.用序列来修改某个字段的值

eg: update cse_depot set jobid=Seq_AutoID.nextval

以上这个例子是用当前的序列值给cse_depot的字段 jobid赋值,使jobid字段实现自动加1功能

以上几点是自己跟据自己所用总结出来的,也希望大家跟帖参与讨论。

下载本文
显示全文
专题