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

  • A+
所属分类:oracle


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,0) NOT 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,
   ...
);

  • 我的微信
  • 这是我的微信扫一扫
  • weinxin
  • 我的微信公众号
  • 我的微信公众号扫一扫
  • weinxin

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: