不同用户触发器相关
现在情况是这样的:
一个数据库有多个用户
在用户A下创建了表TABLE,然后创建了表的同义词TABLE,并授权给另一个用户。A用户下还创建了一个sequence。
用户B下创建了触发器TRIGGER,该触发器用到了A用户下的sequence。然后在B用户下插入数据时报trigger is invalid 的错误。
A用户只有创建表和sequence的权限,用户B只有创建触发器的权限。
-- Create sequence
create sequence PROGRESS_ID_SEQUENCE
minvalue 1
maxvalue 99999999
start with 1
increment by 1
cache 20;
create or replace trigger lckz_progress_id_trigger
before insert on issscandata.LCKZ_PROGRESS /*触发条件:当向表dectuser执行插入操作时触发此触发器*/
for each row /*对每一行都检测是否触发*/
begin /*触发器开始*/
select issscandata.progress_id_sequence.nextval into :new.progress_id from dual; /*触发器主题内容,即触发后执行的动作,在此是取得序列dectuser_tb_seq的下一个值插入到表dectuser中的userid字段中*/
end;