On Oct 1, Crayola said:
Use of uninitialized value in concatenation (.) or string at ./audit-logs.pl line 98.
Which line that you've shown us is line 98?
The code is below.
my $oth = $oracledbh->prepare ("select * from sys.aud\$ where timestamp\# > ? ");
While the '$' does need a backslash, the '#' doesn't. You could just use single quotes here anyway:
$oracledbh->prepare('select * from sys.aud$ where timestamp# > ?');
$oth->bind_param( 1, $timest, { TYPE => 'SQL_DATE' } ); $oth->execute (); while (my @ary = $oth->fetchrow_array() ) { my $rows2 = $mysqldbh->do (\"$sid\", \"${ary[0]}\", \"${ary[1]}\", \"${ary[2]}\", \"${ary[3]}\", \"${ary[4]}\", \"${ary[5]}\", \"${ary[6]}\", \"${ary[7]}\", \"${ary[8]}\", \"${ary[9]}\", \"${ary[10]}\", \"${ary[11]}\", \"${ary[12]}\", \"${ary[13]}\", \"${ary[14]}\", \"${ary[15]}\", \"${ary[16]}\", \"${ary[17]}\", \"${ary[18]}\", \"${ary[19]}\", \"${ary[20]}\", \"${ary[21]}\", \"${ary[22]}\", \"${ary[23]}\", \"${ary[24]}\", \"${ary[25]}\", \"${ary[26]}\", \"${ary[27]}\", \"${ary[28]}\", \"${ary[29]}\")");
What is that? WHAT is THAT? Assuming $mysqldbh is just a database handle, you're passing it a reference to an enormous string. You're doing something wrong here.
my @ary = ();
That's doing nothing -- you're creating a NEW lexical named @ary. Drop the my(), but I'm not even sure it's necessary.
-- Jeff "japhy" Pinyan % How can we ever be the sold short or RPI Acacia Brother #734 % the cheated, we who for every service http://www.perlmonks.org/ % have long ago been overpaid? http://princeton.pm.org/ % -- Meister Eckhart -- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] <http://learn.perl.org/> <http://learn.perl.org/first-response>