create table eqstaff(--员工表
staffID varchar(20),--员工编号
staffName varchar(12),--员工姓名
department varchar(12),--部门
state Varchar(8),--是否在用(在职、离开)
primary key(staffID)
);
Comment On Table eqstaff Is '员工信息表';
Comment On Column eqstaff.staffID Is '员工编号 --使用sequence(seq_eqstaff)';
Comment On Column eqstaff.staffName Is '员工姓名';
Comment On Column eqstaff.department Is '员工所在部门';
Comment On Column eqstaff.state Is '员工是否在职 --没有使用';
Create Sequence seq_eqstaff
INCREMENT BY 1 -- 每次加几个
START WITH 1 -- 从1开始计数
NOMAXVALUE -- 不设置最大值
NOCYCLE ;-- 一直累加,不循环
Create Or Replace Trigger tb_eqstaff
Before Insert On eqstaff For Each Row
Begin
Select to_char(Sysdate,'yyyymm') ||lpad(seq_eqstaff.Nextval,5,'0') Into :New.staffID From dual;
End;