Beefy Boxes and Bandwidth Generously Provided by pair Networks
Problems? Is your data what you think it is?

Re^6: Avoiding compound data in software and system design

by Hue-Bond (Priest)
on Apr 29, 2010 at 13:18 UTC ( #837540=note: print w/replies, xml ) Need Help??

in reply to Re^5: Avoiding compound data in software and system design
in thread Avoiding compound data in software and system design

And that is, all DBI needs to know is the first two fields of the DSN. The first must match 'dbi' (+-case); the second must match a module "DBD::<2ndfield>" that is installed locally. What comes after that is none of its concern. It just gets passed through to the loaded DBD driver.

A half-way alternative would be to specify the driver separated from the DBD-specific stuff. Then this:

$dbh = DBI->connect("dbi:Informix:$database", $user, $pass, %attr); $dbh = DBI->connect("DBI:Unify:dbname[;options]" [, user [, auth [, at +tr]]]); $dbh = DBI->connect("dbi:Oracle:host=$host;sid=$sid", $user, $passwd);

would become this:

$dbh = DBI->connect(Informix => $database, $user, $pass, % +attr); $dbh = DBI->connect(Unify => "dbname[;options]", $user, $pass, % +attr); $dbh = DBI->connect(Oracle => "host=$host;sid=$sid", $user, $pass, % +attr); ...

Please note that this is not an API change request/suggestion ;).

 David Serrano
 (Please treat my english text just like Perl code, i.e. feel free to notify me of any syntax, grammar, style and/or spelling errors. Thank you!).

Log In?

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://837540]
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others scrutinizing the Monastery: (1)
As of 2021-01-24 09:09 GMT
Find Nodes?
    Voting Booth?