use strict; use warnings; use Getopt::Long; use DBI; GetOptions("site=s" => \my $site) or die "Error in command line arguments\n"; defined $site or die "usage: $0 site_name\n"; my %site_map = ( site1 => { host => 'host1', db=>'db1', user=>'user1', pw=>'pw1' }, site2 => { host => 'host2', db=>'db2', user=>'user2', pw=>'pw2' }, site3 => { host => 'host3', db=>'db3', user=>'user3', pw=>'pw3' }, ); my $dbh = dbconnect($site); sub dbconnect { my $s = shift; die "bad site $s" unless $site_map{$s}; my $dsn = "DBI:mysql:database=$site_map{$s}{db};host=$site_map{$s} +{host}"; my $dbh = DBI->connect($dsn, $site_map{$s}{user}, $site_map{$s}{pw +}) or die "ERROR: can't connect to database server site $s"; return $dbh; }
In reply to Re: How to pass hash site variables into sql connection using perl?
by Anonymous Monk
in thread How to pass hash site variables into sql connection using perl?
by finddata
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |