天天看點

ORACLE觸發器簡單列子

場景:

觸發器 ,資料插入表1後,同時把資料插入表2

(sql語句在plsql親測過,可行。這裡每次插入表1 都會把表1的資料全部在插入表2,資料會重複)

--表1
create table student
(
  id       VARCHAR2(32) not null,
  name     VARCHAR2(8) not null,
  age      NUMBER(13,3),
  birthday DATE,
  address  VARCHAR2(200)
)

--表2
create table student_two
(
  id       VARCHAR2(32) not null,
  name     VARCHAR2(8) not null,
  age      NUMBER(13,3),
  birthday DATE,
  address  VARCHAR2(200)
)
--觸發器 ,插入表1後,同時把資料插入表2
CREATE OR REPLACE TRIGGER stu_tri
AFTER INSERT
ON student
BEGIN
INSERT INTO student_two (ID, NAME, AGE, BIRTHDAY, ADDRESS)
SELECT ID, NAME, AGE, BIRTHDAY, ADDRESS FROM STUDENT ;
END stu_tri ;


delete from student;
delete from student_two;
commit;

insert into STUDENT (ID, NAME, AGE, BIRTHDAY, ADDRESS) values ('1', '張三', 11.000, to_date('01-08-2010', 'dd-mm-yyyy'), '廣州');
insert into STUDENT (ID, NAME, AGE, BIRTHDAY, ADDRESS) values ('2', '李四', 9.000, to_date('11-06-2012', 'dd-mm-yyyy'), '深圳');
insert into STUDENT (ID, NAME, AGE, BIRTHDAY, ADDRESS) values ('3', '王五', 7.000, to_date('05-07-2014', 'dd-mm-yyyy'), '上海');
commit;

select * from student order by id;
select * from student_two order by