[ORACLE触发器]求大神解决

有一个想法,
首先创建一个表,有ID(主键),NAME,AGE
再创建一个表,表内有count。
制作一个触发器,如果用户对第一个表进行增删改的时候,触发触发器,对第二个表的count进行+1。
求解决,小白懂得少,希望大神教学,谢谢

3个回答

求详细解答,谢谢。经验不充足,希望大神多多教学

1 创建table1:

CREATE TABLE table1 
( id number(5), 
  name char(20), 
  age number(2), 
);

2 创建table2,并给count字段初值为0

CREATE TABLE table2 
( count number(5), 
);

INSERT INTO table2 VALUES (0);

3 插入触发器

CREATE OR REPLACE TRIGGER add_after_insert
AFTER INSERT
   ON table1
   FOR EACH ROW

DECLARE
   v_currentCount number(5); 

BEGIN
    SELECT count INTO v_currentCount FROM table2;
    UPDATE table2  SET count = v_currentCount +1;
END

4 删除触发器

CREATE OR REPLACE TRIGGER add_after_delete
AFTER DELETE
   ON table1
   FOR EACH ROW

DECLARE
   v_currentCount number(5); 

BEGIN
    SELECT count INTO v_currentCount FROM table2;
    UPDATE table2  SET count = v_currentCount +1;
END

5 更新触发器

CREATE OR REPLACE TRIGGER add_after_update
AFTER UPDATE
   ON table1
   FOR EACH ROW

DECLARE
   v_currentCount number(5); 

BEGIN
    SELECT count INTO v_currentCount FROM table2;
    UPDATE table2  SET count = v_currentCount +1;
END

从新发了一个新的帖子

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问