Here is the trigger
Code:
create or replace trigger testtableinsertupdate 
after insert or update on testtabe
referencing New as n
For Each Row
Begin
  Insert Into Table1 (Name,Age,MailID,DateTime) Values (
      :n.Name,
      :n.Age,
      :n.MailID,
      :n.DateTime);
End;
I have tested this as follows:

1 created two tables:
Code:
  Create Table Testtable (
      Name varchar2(20),
      Age number,
      MailID varchar2(20),
      DateTime Date);
  Create Table Table1 (
      Name varchar2(20),
      Age number,
      MailID varchar2(20),
      DateTime Date);
2. Insert a row into testtable
Code:
Insert Into TestTable Values ('Gary',10,'gary','20-May-07');
3. Checked the data in table Table1 and saw the entered new row.
4. Inserted a new row into testtable
Code:
Insert Into TestTable Values ('Sam',11,'sam','21-May-07');
5. Check data in Table1
Saw two rows Gay and Sam
6. Updated a row in testtable
Code:
Update TestTable Set age = 50 Where Name = 'Gary";
7. Checked data in Table1
Saw Three rows 'Gay' at age 10, Sam and Gary at age 50