我正在尝试为现有的表创建触发器:
CREATE OR REPLACE EDITIONABLE TRIGGER "AD_EDGE_FORECAST_PRODUCTS"
AFTER DELETE ON "EDGE_FORECAST_PRODUCTS" FOR EACH ROW
BEGIN
UPDATE EDGE_FORECAST
SET PRODUCTS_VCE = CASE WHEN PRODUCTS_VCE IS NULL
THEN NULL
ELSE REPLACE(REPLACE(PRODUCTS_VCE, :NEW.PRODUCT, ''), '::', ':') END,
PRODUCTS_VCP = CASE WHEN PRODUCTS_VCP IS NULL
THEN NULL
ELSE REPLACE(REPLACE(PRODUCTS_VCP, :NEW.PRODUCT, ''), '::', ':') END,
PRODUCTS_GRC = CASE WHEN PRODUCTS_GRC IS NULL
THEN NULL
ELSE REPLACE(REPLACE(PRODUCTS_GRC, :NEW.PRODUCT, ''), '::', ':') END,
PRODUCTS_PLM = CASE WHEN PRODUCTS_PLM IS NULL
THEN NULL
ELSE REPLACE(REPLACE(PRODUCTS_PLM, :NEW.PRODUCT, ''), '::', ':') END,
PRODUCTS_MDM = CASE WHEN PRODUCTS_MDM IS NULL
THEN NULL
ELSE REPLACE(REPLACE(PRODUCTS_MDM, :NEW.PRODUCT, ''), '::', ':') END
WHERE ID = :NEW.ID
END;但是当我尝试运行这段代码时,我得到了以下结果:
ORA-24344: success with compilation error
ORA-06512: at "SYS.WWV_DBMS_SQL_APEX_200100", line 581
ORA-06512: at "SYS.DBMS_SYS_SQL", line 1658
ORA-06512: at "SYS.WWV_DBMS_SQL_APEX_200100", line 567
ORA-06512: at "APEX_200100.WWV_FLOW_DYNAMIC_EXEC", line 2127这里的问题是什么?
我是不是忘记了一些基本的/愚蠢的语法?
发布于 2020-05-15 07:05:42
SQL语句末尾的分号(即"WHERE ID = :NEW.ID;“)
https://stackoverflow.com/questions/61808819
复制相似问题