文章目录
一、命令模板和解析
1、查看指定用户下所有的自增序列(两种方式)
-- 查询指定用户下的所有自增序列
select sequence_owner,sequence_name from dba_sequences where sequence_owner='USER' -- 方法一 USER为用户名
select owner, object_name from dba_objects where object_type='SEQUENCE' and owner='USER' -- 方法二 USER为用户名
2、创建自增序列
create sequence SEQ_XXX_XXX -- 序列名称
minvalue 1 -- 最小值
maxvalue 9999999999999 -- 最大值
start with 1 -- 起始值
increment by 1 -- 增量
cache 20; -- 高速缓存大小(一般不需要用)
3、查看指定用户下的所有触发器(两种方式)
-- 查询指定用户下的触发器
select owner, trigger_name from dba_triggers where owner='USER' -- 方法一 USER为用户名
select owner, object_name from dba_objects where object_type='TRIGGER' and owner='USER' -- 方法二 USER为用户名
4、创建触发器
create or replace trigger TRI_XXX_XXX -- 触发器名称
before insert on tb_xxx for each row -- 触发规则, tb_xxx表明
begin
select SEQ_XXX_XXX.nextval into:new.oracle_sn from dual -- SEQ_XXX_XXX序列名,oracle_sn自增列
end;
二、实战使用
1、查看指定用户下所有的自增序列(两种方式)
-- 查询指定用户下的所有自增序列
select sequence_owner,sequence_name from dba_sequences where sequence_owner='PLATFORM' -- 方法一
select owner, object_name from dba_objects where object_type='SEQUENCE' and owner='PLATFORM' -- 方法二
2、创建老化检测结果自增序列
create sequence SEQ_AGING_RACK_NO
minvalue 1
maxvalue 9999999999999
start with 1
increment by 1;
3、查看该用户下的所有触发器
select owner, trigger_name from dba_triggers where owner='PLATFORM'
4、创建AGING_RACK_NO表的触发器,实现ORACLE_SN字段新增
create or replace trigger TRI_AGING_RACK_NO
before insert on AGING_RACK_NO for each row
begin
select SEQ_AGING_RACK_NO.nextval into :new.ORACLE_SN from dual
end;