in reply to Connection Problem to MS Access Database using DBI
Update: Your error message says that it can't find the database file. You should give the full path name.sub conn { my $dbistring; # $dbistring = 'dbi:ADO:Provider=Microsoft.Jet.OLEDB.4.0;Data Sour +ce='; # 32bit # $dbistring = 'dbi:ADO:Provider=Microsoft.ACE.OLEDB.12.0;Data Sou +rce='; # 64bit $dbistring = 'dbi:ODBC:Driver={Microsoft Access Driver (*.mdb, *.a +ccdb)};DBQ='; my $dbh = DBI->connect($dbistring . shift) or die "C ", $DBI::errs +tr; return $dbh; }
Windows can in most cases deal with file paths given with '/' instead of '\' - helps much against leaning toothpick syndrome (and "//server/share/folder/file.accdb" looks much nicer than "\\\\server\\share\folder\file.accdb", anyway). In addition, Path::Tiny helps.
I use it likeuse DBI; use Path::Tiny 'path'; ... my $dbname = path '//server/share/whatever/it is.mdb'; $dbh = conn $dbname->canonpath; ...
|
|---|
| Replies are listed 'Best First'. | |
|---|---|
|
Re^2: Connection Problem to MS Access Database using DBI
by merrymonk (Hermit) on May 17, 2019 at 10:42 UTC | |
by poj (Abbot) on May 17, 2019 at 13:25 UTC | |
|
Re^2: Connection Problem to MS Access Database using DBI
by merrymonk (Hermit) on May 17, 2019 at 10:45 UTC | |
by soonix (Chancellor) on May 18, 2019 at 18:37 UTC |