当前位置:网站首页>Oracle 序列+触发器
Oracle 序列+触发器
2022-07-01 05:41:00 【WHY-small】
Oracle 序列+触发器
删除序列
DROP IAM_USER_PUSH_ID_SEQ;
添加序列
CREATE SEQUENCE "IAM_USER_PUSH_ID_SEQ" INCREMENT BY 1 MINVALUE 1 MAXVALUE 999999999999999999999999 CYCLE NOCACHE ORDER ;
触发器 -简单
create or replace trigger IAM_USER_PUSH_ID_TRI
before insert on IAM_USER_PUSH
for each row
begin
select IAM_USER_PUSH_ID_SEQ.nextval into :new.id from dual;
end;
触发器-如果存在会替换
CREATE OR REPLACE TRIGGER "IAM_USER_PUSH_ID_TRI" BEFORE INSERT OR UPDATE ON IAM_USER_PUSH
FOR EACH ROW
DECLARE
v_count NUMBER(24) :=0;
v_newVal NUMBER(24) := 0;
BEGIN
IF INSERTING AND :new.id IS NULL THEN
SELECT IAM_USER_PUSH_ID_SEQ.NEXTVAL INTO v_newVal FROM DUAL;
-- If this is the first time this table have been inserted into (sequence == 1)
SELECT COUNT(1) INTO v_count FROM IAM_USER_PUSH WHERE ID = v_newVal;
IF(v_count <> 0) THEN
LOOP
EXIT WHEN v_count = 0;
SELECT IAM_USER_PUSH_ID_SEQ.nextval INTO v_newVal FROM dual;
SELECT COUNT(1) INTO v_count FROM IAM_USER_PUSH WHERE ID = v_newVal;
END LOOP;
END IF;
-- assign the value from the sequence to emulate the identity column
:new.id := v_newVal;
END IF;
END;
边栏推荐
- 穿越派与贸大合作,为大学生增添效率
- What is the at instruction set often used in the development of IOT devices?
- 数据治理:数据治理框架(第一篇)
- Unity 使用Sqlite
- Unity project experience summary
- Dynamic verification of new form items in El form; El form verifies that the dynamic form V-IF does not take effect;
- Fluentd is easy to use. Combined with the rainbow plug-in market, log collection is faster
- tese_Time_2h
- 基于微信小程序的青少年生理健康知识小助手(免费获取源码+项目介绍+运行介绍+运行截图+论文)
- MySQL converts milliseconds to time string
猜你喜欢

Set集合详细讲解

穿越派与贸大合作,为大学生增添效率

HCM 初学 ( 一 ) - 简介

MySQL converts milliseconds to time string

Memtable for leveldb source code analysis

MySQL数据迁移遇到的一些错误

scope 数据导出mat

Cockroachdb: the resistant geo distributed SQL database paper reading notes

Mongodb learning chapter: introduction after installation lesson 1

JDBC常见面试题
随机推荐
【考研高数 自用】高数第一章基础阶段思维导图
【考研高数 武忠祥+880版 自用】高数第二章基础阶段思维导图
导数的左右极限和左右导数的辨析
Set set detailed explanation
Floweable source code annotation (40) class delegation
Set集合詳細講解
Geoffrey Hinton:我的五十年深度学习生涯与研究心法
Mongodb學習篇:安裝後的入門第一課
RecycleView的一些使用
2022第八届中国国际“互联网+”大学生创新创业大赛产业命题赛道开启报名!
Advanced cross platform application development (II): uni app practice
4GB大文件,如何实时远程传输和共享?
穿越派 你的数据云行
boot+jsp的高校社团管理系统(附源码下载链接)
Mongodb学习篇:安装后的入门第一课
HCM 初学 ( 四 ) - 时间
College community management system based on boot+jsp (with source code download link)
【QT】qt加减乘除之后,保留小数点后两位
Numeric amount plus comma; JS two methods of adding three digits and a comma to numbers; JS data formatting
为了保护自己的数据,他奋斗了一天一夜