Beefy Boxes and Bandwidth Generously Provided by pair Networks
The stupid question is the question not asked
 
PerlMonks  

Re: Using a single DBI handle in a script and a module

by Sinister (Friar)
on Nov 15, 2001 at 13:33 UTC ( [id://125534]=note: print w/replies, xml ) Need Help??


in reply to Using a single DBI handle in a script and a module

The whole thing looks kinda OOP. Why not hang the DB connection in your object. Passing it around through all these routines as a parameter is a waste of namespace, and it makes your coupling to tight. If you have an OO interface, you could do something like
sub SomeDBRoutine { my $self = shift; $obj->dbh->WhatEver; } sub dbh { my $self = shift; if ( @_ ) { $connection_string = shift; $self->{dbh} = DBI->Connect($connection_string, "user","pass"); } return $self->{dbh}; }
This way you let the module control the connection and you can quite easily set a connection or use it.

Did I mention that this code is untested...?

Sinister greetings.
"With tying hashes you can do everything God and Larry have forbidden" -- Johan Vromans - YAPC::Europe 2001
perldoc -q $_

Log In?
Username:
Password:

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

How do I use this?Last hourOther CB clients
Other Users?
Others learning in the Monastery: (5)
As of 2024-03-29 04:47 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    No recent polls found