首页 > 解决方案 > 插入oracle sql developer后如何添加触发器以自动计算行数

问题描述

我想在插入后添加触发器来计算电影数量!

这是存储计数值的表:

CREATE TABLE mov_count
  (mcount NUMBER);

和电影桌:

create table movie
  (mov_id number primary key,
   mov_title varchar(20),
   mov_lang varchar(20));

这是我创建的触发器:

create trigger count_movie_trg
after insert on movie
for each row
BEGIN

  UPDATE mov_count
  SET    mcount = (SELECT COUNT(*) FROM movie);

END; 
/

创建此内容后,我尝试添加电影,但其显示的变异触发器/功能可能看不到错误。

标签: sqldatabaseoracletriggersoracle-sqldeveloper

解决方案


为什么不只保留值而不参考原始表?

create trigger count_movie_trg after insert on movie for each row
begin
    update mov_count set mcount = mcount + 1;
end;

为了使计数保持最新,您还需要一个delete触发器。


推荐阅读