in reply to Class::DBI, how to pass dynamic connection string to set_db

Caveat: this approach I use for normal DBI apps, as I don't use Class::DBI myself. I hope it's still of some use.

I use an entirely different approach than the others have represented here so far. I've written a small, private library file, similar in spirit to Config.pm, which contains the hardcoded database values. I called it DbConnect.pm. A function fetches database name, user name and password from the hash containing the hardcoded values, based on a parameter passed to a function. Like this:

use DbConnect; use DBI; my $dbh = DBI->connect(DbConnect::connection("foo"), { printError => 0 +, raiseError => 1 }); ...
Every site has its own version of this little module.