小编Tej*_*eju的帖子

CASE 语句不执行任何操作

我有一个带有 case 语句的触发器。在 ELSE 块中代码的最后一部分中,我希望触发器不执行任何操作并在前面的 CASE 语句中的值不匹配时退出。我该怎么做呢:

create or replace TRIGGER  "CONVEYANCE_REQUEST_T3"  
BEFORE  
insert or update on "CONVEYANCE_REQUEST"  
for each row  
begin  

CASE   
 when :NEW.REGULAR_TRAVEL_MODE = '2 WHEELER' THEN  
 BEGIN  
     CASE  
         when :NEW.WAY_TYPE = 'ONE WAY' THEN   
              SELECT RATE_PER_KM * (SELECT DISTANCE_ONEWAY  FROM     DISTANCE_MASTER WHERE PROJECT_CODE = :NEW.PROJECT_CODE ) * 1 INTO     :NEW.REGULAR_AMOUNT FROM CONVEYANCE_RATE WHERE TRAVEL_MODE = :NEW.REGULAR_TRAVEL_MODE;  
         WHEN :NEW.WAY_TYPE ='TWO WAY' THEN  
              SELECT RATE_PER_KM * (SELECT DISTANCE_ONEWAY FROM DISTANCE_MASTER WHERE PROJECT_CODE = :NEW.PROJECT_CODE ) * 2 INTO :NEW.REGULAR_AMOUNT …
Run Code Online (Sandbox Code Playgroud)

sql oracle triggers

2
推荐指数
1
解决办法
4万
查看次数

标签 统计

oracle ×1

sql ×1

triggers ×1