【发布时间】:2012-07-04 12:44:33
【问题描述】:
我被困在此约束所需的触发器类型上。
我会有价格和佣金。价格决定佣金金额,
我的想法。 该数据库包含一个单独的表,其中包含 4 个价格值 101、201、401、601,以及它们自己的匹配佣金百分比,这将被称为 PC。当我创建一个房产列表时,我想根据输入的价格计算他们赚取的佣金。
在插入时,我需要检查 new.price 并将其与 PC 中的价格进行比较。一旦 new.price 小于价格元组,我将价格设置为该佣金值
create or replace TRIGGER findCommission BEFORE INSERT OR UPDATE ON HASLISTING
FOR each ROW
BEGIN
IF (:NEW.ASKING_PRICE < 100001) THEN
:NEW.COMMISSION = 6.0;
END IF;
IF (:NEW.ASKING_PRICE < 250001) THEN
:NEW.COMMISSION = 5.5;
END IF;
IF (:NEW.ASKING_PRICE < 1000001) THEN
:NEW.COMMISSION = 5.0;
END IF;
IF (:NEW.ASKING_PRICE > 1000000) THEN
:NEW.COMMISSION = 4.0;
END IF;
END;
【问题讨论】:
-
说明您正在使用的 RDBMS(例如 Postgresql、MySQL、Sql Server 等)。每个 RDBMS 都有不同的触发语法和机制
-
我正在使用 oracle 应用程序 express
标签: sql oracle triggers oracle-apex