【发布时间】:2014-09-26 02:34:33
【问题描述】:
我想知道这是否是创建数据库模块的正确方法,尤其是创建和使用数据库句柄的方式:
use strict;
use warnings;
use DBI;
my $DB_NAME = 'dancerapp';
my $DB_USER = 'root';
my $DB_PASS = 'root';
sub new {
my $class = shift;
return {}, $class;
}
sub _connect { #use connect_cached() instead?
my $dbh = DBI->connect($DSN, $DB_USER, $DB_PASS) or die $DBI::errstr;
return $dbh;
}
sub getTickets {
my $self = shift;
my $ticket_holder = shift;
my $dbh = $self->_connect;
my $sth = $dbh->prepare("SELECT * FROM table WHERE assigned_to=?");
$sth->execute($ticket_holder);
return $sth->fetchall_hashref;
}
1;
将所有数据库查询存储在一个模块中的主要目的是为它们提供一个单独的位置,我只关心有多个连接/数据库句柄到处乱跑
【问题讨论】:
标签: perl perl-module dbi