Beefy Boxes and Bandwidth Generously Provided by pair Networks
Perl-Sensitive Sunglasses

Can I set the DSN for an ODBC connection?

by Anonymous Monk
on Jan 08, 2004 at 16:47 UTC ( #319860=perlquestion: print w/replies, xml ) Need Help??

Anonymous Monk has asked for the wisdom of the Perl Monks concerning the following question:

Does anyone know if it's possible to set the DSN name of a new ODBC driver install using the Perl DBI module?


  • Comment on Can I set the DSN for an ODBC connection?

Replies are listed 'Best First'.
Re: Can I set the DSN for an ODBC connection?
by phydeauxarff (Priest) on Jan 08, 2004 at 17:05 UTC
    There appears to be

    This from the the docs for DBD::ODBC

    use DBI; $dbh = DBI->connect('dbi:ODBC:DSN', 'user', 'password');

      I read the question to be asking for a way to actually create a DSN for an ODBC driver. I don't think that can be done via DBI at all. On the other hand, the syntax you gave is correct for accessing an ODBC source via DBI, which might be what was wanted. I'm not really clear what the OP is asking.

        ah...good point.

        I dug around and it seems that Win32::ODBC supports a ConfigDSN method to add a new DSN but I have no way to test such an animal in my working environ.

Re: Can I set the DSN for an ODBC connection?
by legato (Monk) on Feb 17, 2005 at 19:46 UTC
    use Win32::ODBC; print "Add DSN successful" if add_dsn('TestDSN'); sub add_dsn { my $dsn = shift; my $result = Win32::ODBC::ConfigDSN( ODBC_ADD_DSN, "SQL Server", ## this last is the driver name ( ##options "DSN=$dsn", ## DSN identifier "NETWORK=DBMSSOCN", ## use TCP/IP library "SERVER=test_server", ## server name "DATABASE=test_db", ## database name "DESCRIPTION=My test DSN" ) ); ## end of ConfigDSN call unless ($result) { print STDERR "Couldn't create $dsn because of error: " .Win32::ODBC::Error()."\n"; return undef; } return 1; } #^^ add_dsn
    This code tested on Win NT,95,98,2k,2k3,XP with ActiveState Perl 5.8.6

    Anima Legato
    .oO all things connect through the motion of the mind

Log In?

What's my password?
Create A New User
Domain Nodelet?
Node Status?
node history
Node Type: perlquestion [id://319860]
Approved by sulfericacid
and the web crawler heard nothing...

How do I use this?Last hourOther CB clients
Other Users?
Others meditating upon the Monastery: (4)
As of 2023-12-08 06:53 GMT
Find Nodes?
    Voting Booth?
    What's your preferred 'use VERSION' for new CPAN modules in 2023?

    Results (35 votes). Check out past polls.