出于某种原因,我在使用 DBI 句柄时遇到了麻烦。基本上发生的事情是我在 perl 模块中创建了一个特殊的连接函数并从执行以下操作切换:
do 'foo.pl'
到
use Foo;
然后我做
$dbh = Foo->connect;
现在由于某种原因,我不断收到错误消息:
无法通过 ../Foo.pm 第 171 行的包“Foo”找到对象方法“回滚”。
所以奇怪的是 $dbh 绝对不是 Foo,它只是在 foo 中定义的。无论如何,到目前为止,我还没有遇到任何麻烦。有什么想法吗?
编辑:@Axeman:connect
原版中不存在。在我们刚刚使用这样的字符串之前:
do 'foo.pl';
$dbh = DBI->connect($DBConnectString);
connect
像这样的东西
sub connect {
my $dbh = DBI->connect('blah');
return $dbh;
}