常用数据库的自增字段创建方法汇总

 

DB2
CREATE   TABLE  T1
(
   id 
INTEGER   NOT   NULL  GENERATED ALWAYS  AS   IDENTITY  (START  WITH   1  INCREMENT  BY   1  MINVALUE  1  NO MAXVALUE NO CYCLE NO CACHE  ORDER ),
   ...
);

Oracle(需要创建一个SEQUENCE和一个TRIGGER):
CREATE TABLE T1
(
   id 
NUMBER(10,0NOT NULL,
   ...
);
CREATE SEQUENCE T1_ID_SEQ INCREMENT BY 1 START WITH 1 NOMAXVALUE NOCYCLE CACHE 100 ORDER;
CREATE OR REPLACE TRIGGER INSERT_T1_ID
BEFORE 
INSERT ON T1
REFERENCING NEW 
AS new OLD AS old
FOR EACH ROW
BEGIN
    
SELECT T1_ID_SEQ.NEXTVAL INTO :new.id FROM DUAL;
END;
/

MySQL
CREATE TABLE T1
(
   id 
INT NOT NULL AUTO_INCREMENT,
   ...
);

PostgreSQL
CREATE TABLE T1
(
   id SERIAL 
NOT NULL,
   ...
);

SQL Server
CREATE TABLE T1
(
   id 
INT NOT NULL IDENTITY
   ...
);

Sybase
CREATE TABLE T1
(
   id 
INT NOT NULL IDENTITY
   ...
);

posted on 2009-10-22 17:30  路大侠  阅读(213)  评论(0)    收藏  举报

导航