oracle 创建字段自增长——两种实现方式汇总
发布日期:2025-04-29 13:19:41 浏览次数:15 分类:精选文章

本文共 1405 字,大约阅读时间需要 4 分钟。

MySQL?Oracle?ID??????????

CREATE SEQUENCE [INCREMENT BY n][START WITH n][{MAXVALUE/ MINVALUE n|NOMAXVALUE}][{CYCLE|NOCYCLE}][{CACHE n|NOCACHE}];

MySQL?Oracle???ID?????????

-- Create sequence        create sequence SEQ_T_RECV        increment by 1        start with 1        maxvalue 9999999        nomaxvalue nocycle nocache;

1) INCREMENT BY?Oracle????1??MySQL??????1

2) START WITH?Oracle?????????MySQL??????1

3) MAXVALUE?MINVALUE????Oracle?????????

4) CYCLE?NOCYCLE???Oracle????????????

5) CACHE???Oracle???????????

????????????

-- Create table        create table RECV_MSG (            id NUMBER,            messageid VARCHAR2(32),            contents VARCHAR2(2000),            app_flg VARCHAR2(100),            phonenumber VARCHAR2(2000),            updatetime DATE default sysdate        );
CREATE OR REPLACE TRIGGER "recv_trig"         BEFORE INSERT ON recv_msg        REFERENCING OLD AS OLD NEW AS NEW FOR EACH ROW        DECLARE            BEGIN                SELECT SEQ_T_RECV.NEXTVAL INTO :NEW.ID FROM DUAL;            END        recv_trig;

???????????????

insert into test values(seq_on_test.nextval,'Mary',15);        insert into test values(seq_on_test.nextval,'Tom',16);

???????????

select * from test; -- /* 1 Mary 15 2 Tom 16 */

????????

select seq_on_test.currval from dual;        select seq_on_test.nextval from dual; -- /* 2 3 */

[????](https://www.cnblogs.com/0201zcr/p/4681780.html)

上一篇:Oracle 升级10.2.0.5.4 OPatch 报错Patch 12419392 Optional component(s) missing 解决方法
下一篇:oracle 创建双向备份,Materialized View 物化视图实现 Oracle 表双向同步

发表评论

最新留言

路过按个爪印,很不错,赞一个!
[***.219.124.196]2026年06月23日 09时59分04秒