比如这样的触发器代码是正确的:
begin
update t_turnmsg_01 set TURNCHECK=:new.TURNCHECK,TURNCTIME=:new.TURNCTIME,RESULT=:new.RESULT,LINKMAN=:new.LINKMAN,LINKPHONE=:new.LINKPHONE,
BTIME=:new.BTIME,BTRANSACTOR=:new.BTRANSACTOR,STATUS=:new.STATUS where TRANSACTIONID=:old.TRANSACTIONID;
end;现在我要在这上面再加个判断功能,根据触发条件的表的字段来判断更新到哪个表像这样,
if :new."SOURCE"='01' then
update t_turnmsg_01 set ……
elsif :new."SOURCE"='02' then
update t_unitmsg_01 set……
end if;但是改完了以后就提示 “索引中丢失in 或者 out 参数::1”
请问一下应该如何实现?触发器
begin
update t_turnmsg_01 set TURNCHECK=:new.TURNCHECK,TURNCTIME=:new.TURNCTIME,RESULT=:new.RESULT,LINKMAN=:new.LINKMAN,LINKPHONE=:new.LINKPHONE,
BTIME=:new.BTIME,BTRANSACTOR=:new.BTRANSACTOR,STATUS=:new.STATUS where TRANSACTIONID=:old.TRANSACTIONID;
end;现在我要在这上面再加个判断功能,根据触发条件的表的字段来判断更新到哪个表像这样,
if :new."SOURCE"='01' then
update t_turnmsg_01 set ……
elsif :new."SOURCE"='02' then
update t_unitmsg_01 set……
end if;但是改完了以后就提示 “索引中丢失in 或者 out 参数::1”
请问一下应该如何实现?触发器
解决方案 »
- 为什么没有PROCEDURE_NAME呢
- ORACLE中如何实现自增字段:
- odp.net的OracleConnection中未提供清空连接池的方法,请问如何清空?
- 每年有10G的数据入库,现有表空间只有20G,UNIX上装有双机热备!
- 简单的存储过程问题!!!!!!!
- 为什么建个 check 约束总是报无效月份呢?
- (数据库高手进来看)oracle过程函数问题
- C#对oracle数据库进行数据插入修改
- 请问怎么对一个表改名
- 程序错误,高手指点.
- 各位,大牛,大侠请帮个忙,把下面的SQLServer(注:下面的SQLServer是错误的,大家看逻辑就可以)转化成Oracle 谢谢!
- 求助:不定行按条件合并成一行,谢谢!
骚年,搞个plsqldev吧。。
有啊,我在PLSQL Developer 里执行后也是一样的
create or replace trigger turnup22
after insert
on MTGWGH.ot_uplists
for each row
begin
insert into t_turnmsg_01("TRANSACTIONID","PHONE1","PHONE2","NAME","SEX","ADDRESS","HELPTIME","HELPCONTENT","SIMPLETYPE","RESULT","LINKMAN","LINKPHONE","STATUS")
values(:new."TRANSACTIONID",:new."PHONE1",:new."PHONE2",:new."NAME",:new."SEX",:new."ADDRESS",:new."HELPTIME",:new."HELPCONTENT",:new."SIMPLETYPE",:new."RESULT",:new."LINKMAN",:new."LINKPHONE",:new."STATUS")
end;这个代码有什么问题?
这段代码,除了insert语句最后没有分号之外,没有任何问题——执行正常,触发也正常。