Beefy Boxes and Bandwidth Generously Provided by pair Networks
No such thing as a small change


by Anonymous Monk
on Feb 24, 2004 at 19:23 UTC ( #331494=perlquestion: print w/replies, xml ) Need Help??
Anonymous Monk has asked for the wisdom of the Perl Monks concerning the following question:

Heya! I'm forced to use an Access database within my project, and am attempting to use DBI::ODBC to connect to my Access file (users.mdb). However, i cannot seem to find sufficient data to learn this procedure outside of the perldoc functions, this is what i have so far...
my $dsn = "DBI:ODBC:driver=Microsoft Access;dbq=users.mdb"; my $dbh = DBI->connect($dsn,'','') or die "Cannot Connect to Server";
However, this doesn't connect, it says it "cannot connect to server". Could anybody point me in the direction of any good DBI::ODBC tutorials ?

Any help is appreciated, thank you!

BazB added code tags.

Replies are listed 'Best First'.
by hardburn (Abbot) on Feb 24, 2004 at 19:32 UTC

    You could change that to die "Cannot connect to server: " . DBI->errstr; to show why it failed.

    : () { :|:& };:

    Note: All code is untested, unless otherwise stated

by matija (Priest) on Feb 24, 2004 at 19:44 UTC
    First, read the examples at the bottom of DBD::ODBC pod file (visible when you do perldoc DBD::ODBC.

    You will find the file contains links to a number of documents about DBD::ODBC. (I won't repeat the links - it's better if you read the doc).

    It also contains this example:

    my $DSN = 'driver=Microsoft Access Driver (*.mdb);dbq=\\\\cheese\\g$\\ +perltest.mdb'; my $dbh = DBI->connect("dbi:ODBC:$DSN", '','') or die "$DBI::errstr\n" +;
    As well as caveats about what you should check if the connection is failing.
by Grygonos (Chaplain) on Feb 24, 2004 at 20:03 UTC

    Greetings fellow victim of legacy Access databases. First things first. Make sure your database is setup as a DSN in your ODBC Data Sources Window. If you're on 2k/XP this is under the administrative tools menu. If you're on a 9x based system then check around the Control Panel... its bound to exist in there somwhere

    For my old Access work I simply did  my $dbh = DBI->connect('DBI:ODBC:'.$my_db_name) or die "$dbh->errstr"; Just make sure you set it up so Windows knows that you will be connecting to it via ODBC.


Log In?

What's my password?
Create A New User
Node Status?
node history
Node Type: perlquestion [id://331494]
Approved by gmax
[Perl300]: I have a quick question about the Meta CPAN
[Perl300]: On any modules pod page, what does the date on top left corner below authors name indicate?
[Corion]: Likely the date of the release of the module
[Corion]: Yep, seems like that

How do I use this? | Other CB clients
Other Users?
Others wandering the Monastery: (9)
As of 2017-12-11 18:01 GMT
Find Nodes?
    Voting Booth?
    What programming language do you hate the most?

    Results (310 votes). Check out past polls.