浅析常用数据库的自增字段创建方法汇总_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,
   ...
);

时间: 2025-01-03 07:49:29

浅析常用数据库的自增字段创建方法汇总_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(需要创

Oracle数据库TNS常见错误的解决方法汇总_oracle

TNS是Oracle Net的一部分,是专门用来管理和配置Oracle数据库和客户端连接的一个工具,在大多数情况下客户端和数据库要通讯,就必须配置TNS.本文主要讲述了Oracle数据库TNS常见错误的解决方法如下: 1.ORA-12541:TNS:没有监听器 原因:没有启动监听器或者监听器损坏.若是前者,使用命令net start OracleOraHome10gTNSListener(名字可能有出入)即可;如果是后者,则使用"Net Configuration Assistant"

oracle自增列创建方法收藏

  oracle自增列创建方法收藏 Oracle没有自增字段这样的功能,但是通过触发器(trigger)和序列(sequence)可以实现. 先建一个测试表了: create table userlogin ( id number(6) not null, name varchar2(30) not null primary key ) tablespace users / 第一步:创建SEQUENCE create sequence userlogin_seq increment by 1 s

c++获取sqlite3数据库表中所有字段的方法小结_C 语言

常用方法: 1.使用sqlite3_get_table函数 2.获取sqlite创建表的sql语句字符串,然后进行解析获取到相应的字段 3.采用配置文件的方式,将所有字段名写入配置文件 下面针对这三个方法给大家逐一详细介绍. 方法1:使用sqlite3_get_table函数 代码: char *dbname = "test.db"; int rc = sqlite3_open(dbname, &db); if (rc == SQLITE_OK) { char sql[256]

Oracle数据库中建立索引的基本方法讲解_oracle

怎样建立最佳索引? 1.明确地创建索引 create index index_name on table_name(field_name) tablespace tablespace_name pctfree 5 initrans 2 maxtrans 255 storage ( minextents 1 maxextents 16382 pctincrease 0 ); 2.创建基于函数的索引 常用与UPPER.LOWER.TO_CHAR(date)等函数分类上,例: create index

Oracle 实现类似SQL Server中自增字段的一个办法_oracle

相关代码如下: 1. 创建sequence: 复制代码 代码如下: CREATE SEQUENCE SEQU_DATA_DATAINFO INCREMENT BY 1 START WITH 1 NOCYCLE NOCACHE NOORDER; 2. 创建触发器: 复制代码 代码如下: create or replace TRIGGER TRIG_TEST BEFORE INSERT ON TABLE1 FOR EACH ROW DECLARE tmpVar NUMBER; BEGIN tmpVa

Oracle数据库数据丢失恢复的几种方法总结_oracle

根据oracle数据库的特点和提供的工具,主要方法有以下几种方法:      利用逻辑备份使用import工具丢失数据的表      利用物理备份来通过还原数据文件并进行不完全恢复      利用dbms_logmnr包从redo log文件中恢复      利用flashback特性恢复数据 前提 为了方便使用方法的介绍,上述恢复方法都将基于以下场景进行:系统管理员在前一天晚上11点用export对数据库做了全库逻辑备份,然后对所有数据文件进行了热备份.第二天上午10点,系统管理员在修改表TF

Hibernate如何与Firebird数据库自增字段映射

Firebird 本身是没有自增型字段,但可以通过序列键产生器和触发器共同来实现,步骤如下: CREATE TABLE my_table (my_number integer not null primary key)CREATE GENERATOR my_generator CREATE TRIGGER my_before_trigger FOR my_table BEFORE INSERT AS BEGIN IF (NEW.my_number IS NULL) THEN NEW.my_num

mysql数据库如何设置一个字段不重复,一个字段自增?

问题描述 mysql数据库如何设置一个字段不重复,一个字段自增? 如题. mysql数据库如何设置一个字段不重复,一个字段自增? 解决方案 CREATE TABLE t_user (Id int(11) NOT NULL AUTO_INCREMENT, -- 自增username varchar(18) NOT NULL unique, -- 唯一性约束password varchar(18) NOT NULL, PRIMARY KEY (Id) ) ENGINE=InnoDB AUTO_INC