How to commit transaction on an after update event trigger?
Why do you expect B to be updated, when you inserted a row with a different id? Actually, your INSERT ALL does not insert anything into B.

The above works fine after fixing your trigger and sample data:

create or replace trigger updB  
after update on B  
for each row  
declare  
v varchar2(5);  
begin  
  v := :new.val;
end;  
/


This is how you reference the new val in the trigger, not with a select. Your original trigger would run into the infamous ORA-04091 "table is mutating" error.

SQL&gt; insert all into A values ('a', 'false') into b values ('a', 'false') select * from dual;

2 rows created.

SQL&gt; commit;

Commit complete.

SQL&gt; update A set val = 'true';
Cek cek: false

1 row updated.

SQL&gt; commit;

Commit complete.

SQL&gt; select * from a;

ID         VAL
---------- ----------
a          true

SQL&gt; select * from b;

ID         VAL
---------- ----------
a          true


For the output:

Your updA trigger runs in an autonomous transaction. When you select val from A, your original update is still not finished (commited), you will see the old value. Fixing your trigger for A:

create or replace trigger updA  
after update on A  
for each row  
declare  
pragma autonomous_transaction;  
cek varchar2(5);  
begin  
commit;  
  cek := :new.val;  
dbms_output.put_line('Cek cek: ' || cek);  
update B set val = :new.val where id = :new.id;  
commit;  
end;  
/