not tested, just principles
my $dao = Win32::OLE->new('DAO.DBEngine.36');
my $db = $dao->OpenDatabase("access_database.mdb");
my $tables = $db->TableDefs;
for (my $i = 0; $i < $tables->{Count}; $i++) {
print $tables->Item($i)->{Name}, "\n";
}
.........
see
c:\Program Files\Common Files\Microsoft Shared\OFFICE11\1049\DAO360.CH
+M
my $ado = Win32::OLE->new('ADODB.Connection');
$ado->Open("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=access_databa
+se.mdb");
my $recordset = $ado->OpenSchema(20); # 20 is adSchemaTables
until ($recordset->{EOF}) {
print $recordset->{Fields}->Item('TABLE_NAME'), "\n";
$recordset->MoveNext;
}
.........
$recordset = $ado->Execute("SELECT ... FROM ... WHERE ...")->GetRows()
+;
print $recordset->[0]->[0], "\n";
.........
see
c:\Program Files\Common Files\Microsoft Shared\OFFICE11\1049\ADO210.CH
+M
and
c:\Program Files\Common Files\Microsoft Shared\OFFICE11\1049\JETSQL40.
+CHM
and also see MS Access application objects model
c:\Program Files\Microsoft Office\OFFICE11\1049\VBAAC10.CHM