Instead of Trigger

If you have a screen which has information shared between two tables, if you are inserting a row in to the screen then from the front end ( in client server ) we need to send two insert statements one for each table. If you create a view which includes all the not null columns from both the tables then we can send only one insert for the view, the instead of trigger can handle to insert the values in to two different tables. So we get the network traffic advantage by using this ( one advantage ).

Say you have a student and course tables. You can add new student and update the number of students column in the course table automatically when you insert a row into the student table.
 

Create table course ( course_id, course_name, no_of_students, start_date );

Create table students ( student_id, student_name , course_id, phone, address, city, state, zip, email_id );

Create View student_course
As
Select
student_id, student_name, student.course_id, course_name, start_date, phone, address, city, state, zip , email_id
from students, course
Where students.course_id = course.course_id;
 

Create or replace trigger student_course_insert
Instead of insert on student_course
Begin
    Insert into student values ( :new.student_id, :new.student_name, :new.course_id, :new.phone, :new.address, :new.city, :new.state, :new.zip, :new.email_id );

   Update course set no_of_students = no_of_students + 1 where course_id = :new.course_id;
End;