ORACLE自增字段创建方法
2009-03-13 09:57
435 查看
oracle没有ORACLE自增字段这样的功能,但是通过触发器(trigger)和序列(sequence)可以实现。
假设关键字段为id,建一个序列,代码为:
create sequence seq_test_ids
minvalue 1
maxvalue 99999999
start with 1
increment by 1
nocache
order;
<!--[if !supportLineBreakNewLine]-->
<!--[endif]-->
CREATE SEQUENCE seq_test_ids MINVALUE 1 MAXVALUE 999999999999999999999999 INCREMENT BY 1 START WITH 1 CACHE 20 NOORDER NOCYCLE ;
建解发器代码为:
create or replace trigger tri_test_id
before insert on test_table
for each row
declare
nextid number;
begin
IF :new.id IS NULLor :new.id=0 THEN
select seq_test_id.nextval
into nextid
from sys.dual;
:new.id:=nextid;
end if;
end tri_test_id;
不用触发器实现的简单方法:
select seq_test_ids.nextval into v_test_id from dual;//下个值
select seq_test_ids.currval into v_test_id from dual;//当前值
假设关键字段为id,建一个序列,代码为:
create sequence seq_test_ids
minvalue 1
maxvalue 99999999
start with 1
increment by 1
nocache
order;
<!--[if !supportLineBreakNewLine]-->
<!--[endif]-->
CREATE SEQUENCE seq_test_ids MINVALUE 1 MAXVALUE 999999999999999999999999 INCREMENT BY 1 START WITH 1 CACHE 20 NOORDER NOCYCLE ;
建解发器代码为:
create or replace trigger tri_test_id
before insert on test_table
for each row
declare
nextid number;
begin
IF :new.id IS NULLor :new.id=0 THEN
select seq_test_id.nextval
into nextid
from sys.dual;
:new.id:=nextid;
end if;
end tri_test_id;
不用触发器实现的简单方法:
select seq_test_ids.nextval into v_test_id from dual;//下个值
select seq_test_ids.currval into v_test_id from dual;//当前值
相关文章推荐
- Oracle创建自增字段方法-ORACLE SEQUENCE的简单介绍
- Oracle创建自增字段方法-ORACLE SEQUENCE的简单介绍
- oracle创建自增字段方法-oracle sequence的简单介绍
- Oracle创建自增字段方法
- Oracle创建自增字段方法-ORACLE SEQUENCE的简单介绍
- Oracle创建自增字段方法-ORACLE SEQUENCE的简介
- Oracle创建自增字段方法-ORACLE SEQUENCE的简单介绍
- ORACLE自增字段创建方法
- Oracle创建自增字段方法-ORACLE SEQUENCE的简单介绍
- Oracle创建自增字段和修改方法-ORACLE SEQUENCE的简单介绍
- Oracle创建自增字段方法-ORACLE SEQUENCE的简单介绍
- 常用数据库的自增字段创建方法汇总_DB2_Oracle_MySQL_PostgreSQL_SQL Server_Sybase
- Oracle创建自增字段方法-ORACLE SEQUENCE的简单介绍
- SQLSERVER自增字段和Oracle创建自增字段-ORACLE SEQUENCE方法的对比-并且用存储过程实现参数输出
- Oracle创建自增字段方法-ORACLE SEQUENCE的简单介绍
- Oracle创建自增字段方法-ORACLE SEQUENCE的简单介绍
- Oracle创建自增字段方法-ORACLE SEQUENCE的简单介绍
- Oracle中创建自增字段(序列sequence)方法
- Oracle创建自增字段方法-ORACLE SEQUENCE的简单介绍 .
- Oracle创建自增字段方法-ORACLE SEQUENCE的简单介绍