Hello Monks, I was wondering if someone could help me with trying to pass array elements into multiple sql statements. Any help will be greatly appreciated. It is complaining about my variable $date1 in the query. Below is the code:
#!/usr/bin/perl use DBI; use strict; my @date1 = ("'2013-08-01 00:00:00.000'","'2013-08-02 00:00:00.000'" +); my @date2 = ("'2013-08-02 00:00:00.000'","'2013-08-03 00:00:00.000'" +); for (my $i = 0; $i < @date1; $i++) { my $dbh = DBI-> connect('dbi:ODBC:DSN=TEST-DB1;UID=SA;PWD=pass') o +r die "CONNECT ERROR! :: $DBI::err $DBI::errstr $DBI::state $!\n" my $sql2 =q/SELECT Login_ID, AuditChrt_TimeStamp, Patient_ID FROM TopsData.dbo.AUDT_AuditChrt WHERE master.dbo.fn_sqlvarbasetostr(AuditChrt_TimeStamp) >= $d +ate1[$i] AND master.dbo.fn_sqlvarbasetostr(AuditChrt_TimeStamp) <= +$date2[$i]/; my $sth = $dbh->prepare($sql2); $sth->execute(); my @row; while (@row = $sth->fetchrow_array) { # retrieve one row at a t +ime print join(", ", @row), "\n"; } $dbh->disconnect; }
Error code: DBD::ODBC::st execution failed: Microsoft ODBC SQL Server Driver SQL SERVER [Ivalid pseudocolumn "$date1". (SQL-42000)
In reply to SQL query using elements from array by AllPaoTeam
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |