Your demonstration has no meaning whatsoever, so extrapolating it is a waste of time. A wall clock measurement of 0.03 seconds, vs 0.00 seconds, tells us nothing at all.

Firstly, measure how long it takes to successfully insert a row in CPU time -- not wall clock time, not PK violation.

Then take account of the need to actually store text. I don't believe that any one would seriously consider storing a numeric PK in a varchar2 column, so the need must be to store a unique text string, right? If you do that with a numeric PK you must be talking about a synthetic PK, so the test case ought to be ...

create table test1 ( Emp_Number Number primary key ,Emp_Name Varchar2(8) Unique);

... and ...

create table test2 ( Emp_Name Varchar2(8) Primary Key);

Test inserts into those structures.