嗨即时处理一个触发器,当新插入的数据(地址,列表编号,日期,价格)具有类似的元组时,将不允许插入/更新。SQL删除具有相同属性的倍数
条件 - 上的列表不能在同一天上市的两倍 表 123,1992年6月19日 123,1990年6月20日 插入:123,1990年6月20日 - 难道不表
唯一已经工作我的代码的问题是,当我的名单表中没有数据开始与
create or replace TRIGGER same_prop_listed BEFORE INSERT OR UPDATE ON HasListing
FOR each ROW
DECLARE
c_date VARCHAR2(20);
BEGIN
SELECT LISTING_DATE
INTO c_date
FROM HasListing
WHERE PROP_ADDRESS = :NEW.prop_address;
IF (c_date = :NEW.listing_date) THEN
RAISE_APPLICATION_ERROR(-20001,'Cannot list same property twice in one day!');
END IF;
EXCEPTION
WHEN NO_DATA_FOUND THEN
RAISE_APPLICATION_ERROR(-20003,'No DATA');
END;
这是Oracle我不能得到它的工作。 所以我的错误是因为c_date为空IF(c_date =:NEW.listing_date)
这是什么类型的SQL?甲骨文? MySQL的? DB2? – RBarryYoung
这是oracle db – George