创建表---》创建sequence---》创建trigger---》通过insert, select, update使用sequence
Example:
1. create table
CREATE TABLE EXAMPLE
(
ID NUMBER(4) NOT NULL,
NAME VARCHAR2(25 BYTE),
PHONE VARCHAR2(10 BYTE),
ADDRESS VARCHAR2(50 BYTE)
)
2. create sequence
CREATE SEQUENCE emp_sequence
INCREMENT BY 1 -- 每次加几个
START WITH 1 -- 从1开始计数
NOMAXVALUE -- 不设置最大值
NOCYCLE -- 一直累加,不循环
CACHE 10;
3. create trigger
CREATE OR REPLACE TRIGGER EXAMPLE_TRIGGER
before insert
ON SCOTT.EXAMPLE
for each row
begin
select emp_sequence.nextval
into :new.id
from dual;
end;
4. insert sentence
INSERT INTO EXAMPLE (NAME,PHONE,ADDRESS) VALUES ('Ivy','12312312312','BJ');
select可见id为1.
5. 查询db中所有sequence
select * from user_objects ubs where ubs.OBJECT_TYPE='SEQUENCE';