{channel.title!channel.name} - 楚淮公司周东林

oracle创建触发器

可以先用PLSQL Developer创建序列,然后创建触发器,可以代替mysql的自增字段。创建序列的时候还可以设置开始值,最小值,最大值,增量(步长)比mysql的自增字段更灵活。


SQL脚本,如果参数错了可以修改后再次执行,可以覆盖。

create or replace trigger tri_users_id
  before insert on users 
  for each row
declare
  nextid number;
begin
  IF :new.user_id IS NULL or :new.user_id=0 THEN
    select id_sequence.nextval
    into nextid
    from sys.dual;
    :new.user_id:=nextid;
  end if;
end tri_users_id;

----------------------------------------------------------------------------

名词解释:

tri_users_id 表示的是触发器的名称‘

users 表示是数据库中的表名,before insert on users  整个意思是是users 表发生 insert 操作后触发事件

user_id 是里的字段,可以是主键。

id_sequence 是前面用 PLSQL Developer创建的序列名。

 

 


浏览.发表于:2018-02-19 13:53:30