use Win32::OLE; use Win32::OLE::Const 'Microsoft ActiveX Data Objects'; my $conn = Win32::OLE->new('ADODB.Connection'); my $rs = Win32::OLE->new('ADODB.Recordset'); $conn->open('MIS'); # this opens an existing DSN connection $rs = $conn->execute('Select * From BackUpLog Order By DateTimeStamp;'); $rs->MoveFirst; while (!$rs->eof) { my $DTStamp = $rs->Fields('DateTimeStamp')->value; print "The DateTimeStamp is $DTStamp!\n" if ($DTStamp); $rs->MoveNext; } # trap any errors with the Win32::OLE->LastError() object print "That didn't go so well: ", Win32::OLE->LastError(), "\n" if (Win32::OLE->LastError()); $rs->close if ($rs); # always make sure you close both the recordset $conn->close if ($conn); # and the connection itself