#!perl
use strict;
use DBI;
my $dbfile = "c:/temp/Database.accdb";
my $dsn = 'driver=Microsoft Access Driver (*.mdb, *.accdb);dbq='.$dbfi
+le;
my $dbh = DBI->connect("dbi:ODBC:$dsn", '', '')
or die $DBI::errstr;;
print join "\n",$dbh->tables();
c:\temp>perl -v
This is perl 5, version 16, subversion 1 (v5.16.1) built for MSWin32-x
+64-multi-thread
(with 1 registered patch, see perl -V for more detail)
c:\temp>perl c:/temp/access.pl
DBI connect('driver=Microsoft Access Driver (*.mdb, *.accdb);dbq=c:/te
+mp/Database.accdb','',...) failed: [Microsoft][ODBC Driver Mana
ger] Data source name not found and no default driver specified (SQL-I
+M002) at c:/temp/access.pl line 6.
[Microsoft][ODBC Driver Manager] Data source name not found and no def
+ault driver specified (SQL-IM002) at c:/temp/access.pl line 6.
D:\strawberry-perl-no64-5.28.2.1-32bit-portable>perl -v
This is perl 5, version 28, subversion 2 (v5.28.2) built for MSWin32-x
+86-multi-thread
D:\strawberry-perl-no64-5.28.2.1-32bit-portable>perl c:/temp/access.pl
`c:/temp/Database.accdb`.`MSysAccessStorage`
`c:/temp/Database.accdb`.`MSysACEs`
`c:/temp/Database.accdb`.`MSysComplexColumns`
`c:/temp/Database.accdb`.`MSysNameMap`
`c:/temp/Database.accdb`.`MSysNavPaneGroupCategories`
`c:/temp/Database.accdb`.`MSysNavPaneGroups`
`c:/temp/Database.accdb`.`MSysNavPaneGroupToObjects`
`c:/temp/Database.accdb`.`MSysNavPaneObjectIDs`
`c:/temp/Database.accdb`.`MSysObjects`
`c:/temp/Database.accdb`.`MSysQueries`
`c:/temp/Database.accdb`.`MSysRelationships`
`c:/temp/Database.accdb`.`MSysResources`
`c:/temp/Database.accdb`.`Table1`
poj
|