浅析常用数据库的自增字段创建方法汇总
更新时间:2013年07月03日 10:17:16 作者:
本篇文章是对常用数据库的自增字段创建方法进行了全面的汇总介绍,需要的朋友参考下
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,
...
);
复制代码 代码如下:
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,
...
);
相关文章
在Linux系统上同时监控多个Oracle数据库表空间的方法
这篇文章主要介绍了在Linux系统上同时监控多个Oracle数据库表空间的方法,文中给出了shell脚本以及统计数据的录入写法,需要的朋友可以参考下2016-01-01
最新评论