Oracle创建自增ID

先创建序列sequence

create sequence S_User

minvalue 1

nomaxvalue  -- 或 maxvalue 999

start with 1

increment by 1

cache 20; -- 或 nocache

参考:

oracle 序列中cache 有什么用途

然后创建触发器

create or replace trigger trg_user before insert on T_USER for each row

begin

select itsmp.S_User.nextval into :new.UserID from dual;

end;

时间: 2024-08-11 01:19:33

Oracle创建自增ID的相关文章

oracle创建自增ID 表以及触发器的使用

1.创建一个普通的用户表 create table demo ( id int not null, name varchar(10), pwd varchar(10) default '123', primary key(id) ) 2.创建一个序列Sequence create sequence seq_demo increment by 1 --自增 1 start with 1 --开始值 1 nomaxvalue --无最大值 minvalue 1 --最小值 1 nocycle; --

在oracle数据库里创建自增ID字段的步骤

CREATE TABLE ADVICE ( ID INT NOT NULL, ACTIVE INT DEFAULT 1 NOT NULL, TYPE INT NOT NULL, MSG VARCHAR2(512) NOT NULL, ADVICE VARCHAR2(4000) NOT NULL, PRIMARY KEY(ID), CONSTRAINT ADVICE_UNI UNIQUE(TYPE,MSG) )TABLESPACE MYDB; --创建自增ID,名称为:表名_字段名_SEQ CRE

oracle实现自增id

--oracle实现自增id --创建一张T_StudentInfo表 create table T_StudentInfo ( "id" integer not null primary key, xsName nvarchar2(120) not null, xsAge integer not null, Mobile varchar(12), Email varchar(50), Address nvarchar2(300) ); --创建一个序列,序列名字叫SEQ_Studen

oracle + mybatis 自增 id的的配置

大过年的还要敲代码,想想也是醉人.今天忙着赶毕设,在做功能测试的时候发现id的值一直为0,一看就知道id的值没有自增,一直默认为0了.于是去百度了一番,默默调试,找到下面这段代码: <selectKey keyProperty="id" resultType="int" order="BEFORE"> SELECT SEQ_RESULT_ID.nextval as id FROM DUAL </selectKey> 这段代

Oracle创建自增字段和修改方法-ORACLE SEQUENCE的简单介绍

http://blog.csdn.net/zhoufoxcn/article/details/1762351先假设有这么一个表: create table S_Depart  (    DepartId             INT                             not null,    DepartName           NVARCHAR2(40)                   not null,    DepartOrder          INT 

Oracle 创建自增列

类似SqlServer中的标识列   identity,Oracle实现同样的效果有点小复杂额,如下: 1 --1.创建表 2 create table Student( 3 ID integer not null primary key, 4 Name varchar2(40) not null, 5 Sex integer, 6 Address varchar2(100) 7 ) 8 tablespace MyTest_Data;--指明表空间 9 10 --2.创建序列 11 create

Oracle创建自增字段方法-ORACLE SEQUENCE的简介

曾经最头疼的就是对表插入数据的时候,有主键问题. 由于主键不可以反复,所以得用函数自己定义一个规则生成不反复的值赋值给主键. 如今发现oracle有sequence就不用那么麻烦了. 转自:http://zhoufoxcn.blog.51cto.com/792419/166418/ 先如果有这么一个表: create table S_Depart    ( DepartId                         INT                                  

Oracle创建自增字段方法-ORACLE SEQUENCE的简单介绍

引用自 :http://www.2cto.com/database/201307/224836.html 先假设有这么一个表: create table S_Depart ( DepartId INT not null, DepartName NVARCHAR2( 40) not null, DepartOrder INT default 0, constraint PK_S_DEPART primary key (DepartId) ); 在oracle中sequence就是所谓的序列号,每次

oracle创建自增字段方法

1.创建表 create table test ( id NUMBER, messageid VARCHAR2(32) ); 2.创建序列 create sequence test_id minvalue 1 maxvalue 9999999 start with 1 increment by 1 cache 50; 3.创建触发器 CREATE OR REPLACE TRIGGER "test_auto_id" BEFORE INSERT ON recv_msg REFERENCIN