oracle 自增序列实现 可作为主键
好记性不如烂笔头
记录如何建立oracle 自增序列
表结构
create table TAB_USERINPUT ( RID VARCHAR2(20) not null, VARID VARCHAR2(20), VALUE VARCHAR2(100), CREATETIME DATE, USERMNAME VARCHAR2(20) )
RID 是我要建自增序列字段
第一步:
建立一个序列:
-- Create sequence create sequence SQE_TAB_USERINPUT minvalue 1 maxvalue 99999999999999999999999999--不要超过序列的位数 start with 21 increment by 1 cache 20;
第二步:
把序列与表的字段关联 (oracle 的序列作用空间是数据库 所以一个序列可以与多个表关联,但是他们使用同一个数据)
create or replace trigger TR_TAB_userinput before insert on TAB_USERINPUT -- 这里最好使用before for each row -- begin select SQE_TAB_USERINPUT.nextval into:new.rID from dual; end;
到此,自增序列就建好了