in reply to Re^8: SQL query using elements from array
in thread SQL query using elements from array

Try this, untested:

use Data::Dumper; my $sth = $dbh->prepare($sql2); $dbh->{RaiseError} = 1; foreach my $i (0 .. @date1 - 1) { eval { $sth->execute($date1[$i], $date2[$i]); my @row; while (@row = $sth->fetchrow_array) { # retrieve one row at +a time print join(", ", @row), "\n"; } }; if ($@) { print "$@\n"; print Dumper($sth->{ParamValues}); } }

Replies are listed 'Best First'.
Re^10: SQL query using elements from array
by AllPaoTeam (Sexton) on Oct 15, 2014 at 15:46 UTC
    Yea I ran this but got the error:
    Use of uninitialized value in subroutine entry at c:/Perl64/lib/DBD/OD +BC.pm line 166.

      I can only guess you have an old version of DBD::ODBC - what version have you got? This self contained example works for me:

      use strict; use warnings; use DBI; use Data::Dumper; my $h = DBI->connect("dbi:ODBC:xxx","xxx","xxx", {RaiseError => 1, Pri +ntError => 0}); eval { $h->do(q/drop table mje/); }; $h->do(q/create table mje (a int)/); $h->do(q/insert into mje values(1)/); my $s = $h->prepare(q/select * from mje where a = ?/); eval { $s->execute('fred'); }; if ($@) { print "$@"; print Dumper($s->{ParamValues}); } # outputs # DBD::ODBC::st execute failed: [unixODBC][Easysoft][SQL Server Driver + #11.0][SQL Server]Invalid character value for cast specification (SQ +L-22018) #at paramvalues.pl line 17. #$VAR1 = { # '1' => 'fred' # };
        Yea, I dont have my laptop with me today, I will run that over the weekend and see if I have any issues. Once again thanks for all your time and effort. It would be great if I get this to work, it would save me a lot of time in the future. Will try to post what happens on monday or tuesday.