2
我正在使用Oracle Apex。 我需要創建一個觸發器來檢查no。的股票是否< 0. 如果沒有。的股票< 0然後插入操作停止然後提示一條警告消息給用戶。 以下編碼不起作用。我的代碼有什麼問題?請幫忙。如何在觸發器中停止插入操作
我的編碼:
CREATE OR REPLACE TRIGGER cw_service_b4_trigger
BEFORE INSERT ON cw_serviceline
FOR EACH ROW
DECLARE
exist_stock number;
BEGIN
select stock into exist_stock from cw_inventory where inv_id = :new.inv_id;
if (exist_stock - :new.quantity) < 0 then
dbms_output.put_line ('Out of Stock');
return;
end if;
END;
/
請擴大'不起作用'。你有錯誤(張貼它)還是它什麼都不做(解釋你期望的) – 2014-10-04 04:12:35
cw_inventory表的數量列配置爲不允許<0.當我按APEX上的應用更改。顯示以下消息:發生了1個錯誤 ORA-02290:檢查約束(LECTURE_6.CH_STOCK)違反了ORA-06512:在「LECTURE_6.CW_INVENTORY_SERVICE_TRIGGER」第3行ORA-04088:執行觸發器'LECTURE_6.CW_INVENTORY_SERVICE_TRIGGER'時出錯(行3)。它似乎試圖插入。 – 2014-10-04 04:21:22