先建序列,然后建立一个触发器实现! cata0是表名,cata0_id是需要自增的字段! CREATE SEQUENCE SEQ_cata0 INCREMENT BY 1 START WITH 1 MAXVALUE 9999999CREATE TRIGGER TRG_cata0 BEFORE INSERT ON cata0 FOR EACH ROW begin SELECT SEQ_cata0.NEXTVAL INTO :NEW.cata0_ID FROM DUAL; End TRG_cata0;
但是两者有一定区别。sequence的性能自然是顶呱呱,使用也很简便,但是无法保证序号的连续性。
如果你非得实现和MSSQL一样的功能,建议写一个触发器。
oracle 没提供自增字段的
cata0是表名,cata0_id是需要自增的字段!
CREATE SEQUENCE SEQ_cata0
INCREMENT BY 1
START WITH 1
MAXVALUE 9999999CREATE TRIGGER TRG_cata0 BEFORE
INSERT ON cata0
FOR EACH ROW begin
SELECT SEQ_cata0.NEXTVAL
INTO :NEW.cata0_ID
FROM DUAL;
End TRG_cata0;