当前位置: 代码迷 >> Oracle管理 >> 在触发器里有这样的用法吗?解决办法
  详细解决方案

在触发器里有这样的用法吗?解决办法

热度:68   发布时间:2016-04-24 05:31:01.0
在触发器里有这样的用法吗?
if exists(select 1 from ERCP_PayResult where OrderNo=:new.OrderNo) then
 --
else
 --
end if;


我改为
if (1=1) then
 --
else
 --
end if;

编译通过

------解决方案--------------------
为什么不行啊。。。if(1=1)也是个判定
以前经常用这句 不过是跟着where的
where 1= 1 and ******
------解决方案--------------------
机器上没有oracle的实例了。。
在mysql下测试是可以通过的

mysql> create trigger trigger_wus before insert on csdn_wus
-> for each row
-> begin
-> if exists(select 1 from csdn_wus where name = new.name) then
-> set new.name = 'xxx';
-> else
-> set new.name = 'ooo';
-> end if;
-> end //
Query OK, 0 rows affected (0.03 sec)
  相关解决方案