我必须实现一个触发器:
7)显示DDL,了解如何使用触发器将所有租借副本从正在从商店信息表中删除的商店转移到中央商店
8)展示如何扩展此触发器 确保中心商店永远不会从数据库中删除
到目前为止,我已经这样做了:
创建或更换TRIGGER商店
在商店之前删除商品 每行开始如果删除cvr = 123456789那么
Raise_Application_Error(
num => -20050,
msg =>'你可以 不删除主商店。');
结束IF;
如果删除那么 UPDATE store_id = 123456789 ON电影WHERE isActive = 0
END IF;
结束;
所以主存储是用cvr写的,但它给了我一个编译错误。有帮助吗?提前谢谢。
答案 0 :(得分:0)
您的代码中有两个错误。
没有“DELETING WHERE”表达式,你必须使用两个布尔异常,如下所示:
IF DELETING AND:old.cvr = 123456789那么......
:old.cvr
是指已删除记录中的cvr列的值
UPDATE子句的语法是
UPDATE table_name SET column_name1 = value1, column_name1 = value2 在哪里where_clause;
在你的情况下可能会有这样的想法:
UPDATE movies
set store_id = 123456789
WHERE store_id = :old.cvr
我想,我不知道所需的功能