oracle数据库建表问题,求大神帮忙
发布网友
发布时间:2022-04-09 13:41
我来回答
共4个回答
热心网友
时间:2022-04-09 15:10
外键(Foreign Key)不能解决这个问题
你必须要通过创建一个触发器(Trigger)才能解决
CREATE OR REPLACE TRIGGER suppliername_change
BEFORE UPDATE OF suppliername
ON suppliers
REFERENCING NEW AS New OLD AS Old
FOR EACH ROW
BEGIN
update bills set suppliername = :new.suppliername where suppliername=:old.suppliername;
EXCEPTION
WHEN OTHERS THEN
-- Consider logging the error and then re-raise
RAISE;
END ;
热心网友
时间:2022-04-09 16:28
需要使用触发器来解决这个问题。在suppliers表的suppliername上创建一个触发器,当update时,修改bills表中的suppliername
热心网友
时间:2022-04-09 18:03
不可能靠外键,只能靠触发器,外键不是这样用的
热心网友
时间:2022-04-09 19:54
可以用外键引用。