I am using Perl to extract data from a database using COM functions.
Why?
COM functions are all very good, in their place. But unless there is no alternative, there place is not in Perl code. Perl has a very extensive set of database access moethods which have been well and truly tested under fire, which handle an amazing range of databases and offer a consistent interface as you do it. Right from the lowly DBI, through to some pretty impressive ORM tools like Class::DBI, DBIx::Class and Rose::DB. As you are talking about ADO, then it is probable that you are using Microsoft Access and for that I would suggest DBD::ODBC would be a far more Perlish way of attacking the beast. Of course, you should look at the Tutorials section of the monastery to get a significant injection of wise counsel and good knowledge.
jdtoronto