首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >oracle是否有"auto number“数据类型?

oracle是否有"auto number“数据类型?
EN

Stack Overflow用户
提问于 2011-06-18 01:43:52
回答 2查看 7.3K关注 0票数 0

我很惊讶地看到oracle没有"auto number“数据类型。有没有办法使用自动编号数据类型,就像我们在MS access中有这种数据类型一样?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2011-06-18 01:47:31

This blog post描述了此功能的一个选项。

下面引用了关键元素,但这篇文章更深入。

创建序列test_seq以1递增1 NOMAX值开始;

紧接着是

在测试值中插入(test_seq.nextval,‘

!’);

create trigger test_trigger before insert on test为每行begin select test_seq.nextval into :new.id from dual;end;

票数 6
EN

Stack Overflow用户

发布于 2011-06-18 03:02:17

在oracle中,您使用序列。您可以有任意数量的序列,并使用它们中的任何一个为任何表中的任何字段分配一个唯一编号,或者只需调用一个序列将一个编号分配给一个变量。

代码语言:javascript
复制
SQL> CREATE SEQUENCE demo_seq INCREMENT BY 1 MAXVALUE 999999999999999999999999999 MINVALUE 0 NOCACHE;

Sequence created.

SQL> select demo_seq.nextval from dual;
   NEXTVAL                                                                      
----------                                                                      
         0  

SQL> select demo_seq.nextval from dual;

   NEXTVAL                                                                      
----------                                                                      
         1   

SQL> select demo_seq.nextval from dual;
   NEXTVAL                                                                      
----------                                                                      
         2   

SQL> select demo_seq.currval from dual;
   CURRVAL                                                                      
----------                                                                      
         2   

参考文献:

http://www.techonthenet.com/oracle/sequences.php

http://download.oracle.com/docs/cd/B19306_01/server.102/b14200/statements_6015.htm

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/6389641

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档