in reply to Error during connecting oracle 10g

Is all this code really necessary? It would seem to me that the following program should behave the same:

#!perl -w use strict; use DBI;

You have two versions of Perl installed, one that came with Oracle (E:\oracle\product\10.1.0\Db_2\perl\5.6.1\) and the other (E:\Perl\). They are getting mixed up, maybe because you have set PERL5LIB or some other environment variable. Clean up the directory settings and make sure that each Perl only sees the correct directories.