#!/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') or 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) >= $date1[$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 time print join(", ", @row), "\n"; } $dbh->disconnect; }