oracle, mysql, pgsql 을 쉽게접속하기위한 함수
(물론 모듈은 각자 구해서 사용함~)
sub db_connect($$$$)
{
my ($DB_SID, $DB_USER, $DB_PASSWD, $DB_SYSTEM) = @_;
my $dbh = "";
my $dsn = "";
eval {
$SIG{ALRM} = sub { die "$!"; };
alarm(2);
if ($DB_SYSTEM eq "oracle") {
$dsn = "DBI:Oracle:$DB_SID";
}
elsif ($DB_SYSTEM eq "mysql") {
$dsn = "DBI:mysql:database=$DB_SID";
}
else {
$dsn = "DBI:Pg:dbname=$DB_SID;host=localhost";
}
$dbh = DBI->connect($dsn,
$DB_USER,
$DB_PASSWD,
{RaiseError => 1,AutoCommit => 0,PrintError => 1});
alarm(0);
};
if ($@) {
warn "DBI->connect() timeout";
warn $@;
$dbh = undef;
}
if (! $dbh) {
warn "DBI->connect() failed: $!";
return undef;
}
return $dbh;
}
끝.!
'업무 > Perl' 카테고리의 다른 글
[perl] trim 구현하기..함수.. (0) | 2012.12.10 |
---|---|
[perl] HP-UX에서 Text::Iconv 가 안될때해결법.. (0) | 2012.05.25 |
[perl] Hash 크기 구하기 (0) | 2012.02.27 |
[perl] DBD-mysql 모듈 경로지정해서 설치하기 (0) | 2012.02.20 |
[perl] 핸들변수 함수인자로 넘겨버리기 (0) | 2012.02.02 |