Oracle的自增序列、触发器、序列
来源:互联网 发布:升调降调软件 编辑:程序博客网 时间:2024/06/05 10:40
1.首先是序列的定义:
CREATE SEQUENCE sequence //创建序列名称
[INCREMENT BY n] //递增的序列值是n 如果n是正数就递增,如果是负数就递减 默认是1
[START WITH n] //开始的值,递增默认是minvalue 递减是maxvalue
[{MAXVALUE n | NOMAXVALUE}] //最大值
[{MINVALUE n | NOMINVALUE}] //最小值
[{CYCLE | NOCYCLE}] //循环/不循环
[{CACHE n | NOCACHE}];//分配并存入到内存中
NEXTVAL 返回序列中下一个有效的值,任何用户都可以引用
CURRVAL 中存放序列的当前值
NEXTVAL 应在 CURRVAL 之前指定 ,二者应同时有效
例子:
create sequence SYID2 minvalue 1 maxvalue 9999999999999 start
with 9 increment by 1 nocache order;
调用:
select SYID2.nextval from dual;
2.其次是触发器的定义:
CREATE [OR REPLACE] TRIGGER trigger_name
INSTEAD OF
{INSERT | DELETE | UPDATE [OF column [, column …]]}
[OR {INSERT | DELETE | UPDATE [OF column [, column …]]}...]
ON [schema.] view_name --只能定义在视图上
[REFERENCING {OLD [AS] old | NEW [AS] new| PARENT as parent}]
[FOR EACH ROW ] --因为INSTEAD OF触发器只能在行级上触发,所以没有必要指定
[WHEN condition]
PL/SQL_block | CALL procedure_name;
:new --为一个引用最新的列值;
:old --为一个引用以前的列值; 这两个变量只有在使用了关键字 "FOR EACH ROW"时才存在.且update语句两个都有,而insert只有:new ,delect 只有:old;
例子: create or replace trigger SYIDtrigger2 //触发器名字
before insert on ashare_cjhb //触发条件
for each row //触发级别
begin
select SYID2.nextval into :new.rec_num from dual; //pl/sql块
end;
/
自增长序列的实现:(原理就是在触发器中定义要触发的事件,然后在触发器中实现在触发该事件是使用sequence,就达到了自增长的目的)
drop sequence SYID2;
create sequence SYID2 increment by 1 start with 1 minvalue 1 maxvalue 9999999999999 nocache order;
--drop trigger SYIDtrigger;
create or replace trigger SYIDtrigger2
before insert on ashare_cjhb
for each row
begin
select SYID2.nextval into :new.rec_num from dual;
end;
/
- Oracle的自增序列、触发器、序列
- Oracle实现自增方式:序列+触发器
- Oracle序列和触发器实现表的主键自增
- 序列详解以及触发器小解及通过序列与触发器实现Oracle自增列效果
- ORACLE的自增序列
- oracle创建序列和触发器使主键ID自增
- Oracle使用序列和触发器实现自增ID
- 创建序列和触发器实现Oracle字段自增功能
- oracle 创建触发器和序列(id自增)
- oracle 主键自增(序列和触发器)
- oracle 利用序列和触发器实现主键自增demo
- oracle利用序列和触发器使字段自增
- oracle数据库创建序列和触发器实现id自增
- oracle通过序列和触发器实现自增主键
- Oracle序列+触发器+主键(实现主键自增)
- Oracle 序列 触发器的使用
- oracle 的自增需要依靠序列和触发器共同实现
- Oracle自增序列
- AndroidStudio快捷键Editing
- C++ math库函数
- android developers 最新镜像 2015-11-26
- 获取网上图片
- ajax使用笔记
- Oracle的自增序列、触发器、序列
- poj 1353 Color Change of Go Game Pieces 模拟
- 黑马程序员_Java输入输出流
- 统计语言模型学习笔记
- VC 互助平台
- EEPROM分页写数据的理解
- 解决安全扫描HTTP的不安全方法
- .bat set java environment
- 一个快速打开微信收藏的方法