触发器的问题 假设有A、B两张数据表,两表中都有一个唯一的NAME字段,A表中NAME与B表中NAME是一对多关系。我想做一个触发器,实现当A表中记录被删除时,同时删除B表中NAME对应的记录,求解~ 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 这个还是比较简单的. create or replace trigger trigger_name before delete on table_A for each row begin delete from table_B where name =:old.name;end ; 不行啊,提示:索引中丢失IN或OUT参数::1 为什么不用foreign key自动删除T@ORA>CREATE TABLE C(A INT REFERENCES P(A) ON DELETE CASCADE);Table created.Elapsed: 00:00:00.03T@ORA>SELECT * FROM P; A---------- 1Elapsed: 00:00:00.06T@ORA>SELECT * FROM C;no rows selectedElapsed: 00:00:00.03T@ORA>INSERT INTO C VALUES(1);1 row created.Elapsed: 00:00:00.00T@ORA>DELETE FROM P;1 row deleted.Elapsed: 00:00:00.01T@ORA>SELECT * FROM C;no rows selectedElapsed: 00:00:00.00T@ORA> 外键的级联删除就可以on delete cascade 送分了~~ 谁帮我解释一下这段SQL的意思啊 共享内存应该大于512*进程数 512什么意思。 oracle右连接转换为sql server 超级简单问题!!!!!!!! JEMSF 数据类似查找的问题 为什么别人访问不了我机器上的Oracle服务? 客户端在不安装oracle client的前提下,如何连接远程oracle server ?需要什么文件呢? function好像不对 请大家帮忙解决oracle9i的古怪问题 Oracle优化问题
before delete on table_A
for each row
begin
delete from table_B where name =:old.name;
end ;
T@ORA>CREATE TABLE C(A INT REFERENCES P(A) ON DELETE CASCADE);Table created.Elapsed: 00:00:00.03
T@ORA>SELECT * FROM P; A
----------
1Elapsed: 00:00:00.06
T@ORA>SELECT * FROM C;no rows selectedElapsed: 00:00:00.03
T@ORA>INSERT INTO C VALUES(1);1 row created.Elapsed: 00:00:00.00
T@ORA>DELETE FROM P;1 row deleted.Elapsed: 00:00:00.01
T@ORA>SELECT * FROM C;no rows selectedElapsed: 00:00:00.00
T@ORA>