oracle 12c之前用sequence 和 trigger来生成自动增长的列
2014-07-29 17:23
477 查看
SQL> create table scott.t1 (id number, val varchar2(8));
Table created.
SQL> CREATE SEQUENCE scott.t1_id_seq INCREMENT BY 1 START WITH 1 NOMAXVALUE NOCYCLE ;
Sequence created.
SQL> create or replace trigger scott.t1_id_trigger
2 before insert on scott.t1 for each row
3 begin
4 select scott.t1_id_seq.nextval into :new.id from dual;
5 end;
6 /
Trigger created.
SQL> insert into scott.t1(val) values('a');
1 row created.
SQL> commit;
Commit complete.
SQL> select * from scott.t1;
ID VAL
---------- ------------------------
1 a
SQL> insert into scott.t1(val) values('b');
1 row created.
SQL> select * from scott.t1;
ID VAL
---------- ------------------------
1 a
2 b
SQL> commit;
Commit complete.
Table created.
SQL> CREATE SEQUENCE scott.t1_id_seq INCREMENT BY 1 START WITH 1 NOMAXVALUE NOCYCLE ;
Sequence created.
SQL> create or replace trigger scott.t1_id_trigger
2 before insert on scott.t1 for each row
3 begin
4 select scott.t1_id_seq.nextval into :new.id from dual;
5 end;
6 /
Trigger created.
SQL> insert into scott.t1(val) values('a');
1 row created.
SQL> commit;
Commit complete.
SQL> select * from scott.t1;
ID VAL
---------- ------------------------
1 a
SQL> insert into scott.t1(val) values('b');
1 row created.
SQL> select * from scott.t1;
ID VAL
---------- ------------------------
1 a
2 b
SQL> commit;
Commit complete.
相关文章推荐
- Jdeveloper 12c 实体主键自动生成 使用 oracle.jbo.server.SequenceImpl 报错
- oracle主键自动增长的实现 Oracle Sequence oracle maxid自动生成--ORA-00001: 违反唯一约束条件 (NAME.SYS_C005547)产生的原因之一(select * from all_cons_columns w
- Oracle主键自增长及自动生成sequence
- oracle中利用trigger,sequence自动生成ID
- ORACLE中 SEQUENCE自动增长 用法
- Oracle 自动生成编号(实现sqlserver自增长字段)
- Oracle 自动生成编号(实现sqlserver自增长字段)
- oracle中插入一条数据,id自动增长,插入之后怎么得到这个id(sequence的使用)
- Hibernate注解映射sequence时出现无序增长问题+hibernate 映射 oracle ID自动增长
- oracle:sequence、触发器与自动增长字段
- Oracle squence自动生成trigger创建失败
- Oracle 自动生成编号(实现sqlserver自增长字段)
- Oracle主键自增长及自动生成策略
- ORACLE同步数据库之,自动生成sequence 文件
- Oracle 自动生成编号(实现sqlserver自增长字段)
- Hibernate注解映射sequence时出现无序增长问题+hibernate 映射 oracle ID自动增长:
- 大家用hibernate的时候, 使用hibernate的sequence自动增长序列, 数据库是oracle
- 在oracle中插入一条数据,id自动增长,插入之后怎么得到这个id(sequence的使用)
- 在oracle中插入一条数据,id自动增长,插入之后怎么得到这个id(sequence的使用)
- ORACLE中 SEQUENCE自动增长 用法