create or replace trigger trigger_fbi_buzi_9008_update
after INSERT OR UPDATE ON fbi_buzi_9008
FOR EACH ROW
declare
begin
if (:new.result_code = '000000' and :new.buzi_type = '005' and :new.packet_code = '1003' ) then----授权支付 已到账
update jdcztest.CP_PLAN_AGENT_BILL t set t.a_status_code = '6'
where v_cp_plan_agnet_list.DP_DETAIL_ID = :new.buzi_id ;
END IF;
END trigger_fbi_buzi_9008_update;这是我的触发器代码,现在报PL/SQL:ora-00904:“v_cp_plan_agnet_list.DP_DETAIL_ID”:invalid identifier
sql statement ignored
我的视图是写好了的,现在触发器没法编译通过
after INSERT OR UPDATE ON fbi_buzi_9008
FOR EACH ROW
declare
begin
if (:new.result_code = '000000' and :new.buzi_type = '005' and :new.packet_code = '1003' ) then----授权支付 已到账
update jdcztest.CP_PLAN_AGENT_BILL t set t.a_status_code = '6'
where v_cp_plan_agnet_list.DP_DETAIL_ID = :new.buzi_id ;
END IF;
END trigger_fbi_buzi_9008_update;这是我的触发器代码,现在报PL/SQL:ora-00904:“v_cp_plan_agnet_list.DP_DETAIL_ID”:invalid identifier
sql statement ignored
我的视图是写好了的,现在触发器没法编译通过
解决方案 »
- 求助:proc使用连接池、多线程造成连接会话异常
- 请问ora-01403:no data found
- oracle基础操作
- oracle中这个sql语句什么意思?
- 高手请教!刚安装完Oracle 9i,程序提示 ORA-00904: "ISNULL": 无效的标识符,请问是什么原因?
- 为什么这个SQL总是提示有错?(急,急,在线等,高分奉送!!!)
- 添加问题成功 oracle根据表中的某个字段,按照这个字段把它分范围查询
- 创建数据库的时候,提示当前盘下的容量不够,如何办啊?怎么改变oracle_base 的路径?
- 装了三个多小时还没装上,咋办??
- 在Oracle中如何添加和读取二进制文件?
- oracle-schema
- 请教一个关于 11g r2 emca的问题
create or replace trigger trigger_fbi_buzi_9008_update
after INSERT OR UPDATE ON fbi_buzi_9008
FOR EACH ROW
--declare--去掉
begin
if (:new.result_code = '000000' and :new.buzi_type = '005' and :new.packet_code = '1003' ) then----授权支付 已到账
update jdcztest.CP_PLAN_AGENT_BILL t set t.a_status_code = '6'
where v_cp_plan_agnet_list.DP_DETAIL_ID = :new.buzi_id ;
END IF;
END trigger_fbi_buzi_9008_update;
-- where v_cp_plan_agnet_list.DP_DETAIL_ID = :new.buzi_id ;
这句话是什么意思呢?
你更新CP_PLAN_AGENT_BILL 表,where的条件却是v_cp_plan_agnet_list表?
也没有两个表做联合,就会报错。
where v_cp_plan_agnet_list.DP_DETAIL_ID = :new.buzi_id ;--你的where倏件應該同一個表的字段,怎么搞了另一個表,這個地方應也不對
--declare--去掉NO..... DECLARE 要存在而且必须存在.