database – DBIx :: Class获取dbh
发布时间:2020-12-15 21:47:00 所属栏目:大数据 来源:网络整理
导读:我正在建设的 Catalyst应用程序中使用 DBIx::Class.它工作得很好,但有时我需要使用我自己开发的自己的db函数,这些函数非常符合我的需求.因此,我需要一个dbh.但是,因为我已经在使用DBIx :: Class,所以我知道它已经使用了dbh.为了避免与数据库建立另一个不必要
我正在建设的
Catalyst应用程序中使用
DBIx::Class.它工作得很好,但有时我需要使用我自己开发的自己的db函数,这些函数非常符合我的需求.因此,我需要一个dbh.但是,因为我已经在使用DBIx :: Class,所以我知道它已经使用了dbh.为了避免与数据库建立另一个不必要的连接,我想使用DBIx :: Class已经创建的dbh.我知道
DBIx::Class::Storage::DBI模块有两个方法dbh和dbh_do,但我不确定两者之间的区别是什么,如果它们是访问dbh的最佳方式.任何人都可以告诉我从DBIx :: Class获取dbh的最佳方法是在Catalyst应用程序中吗?我更喜欢一种方法,我可以将其存储在存储区中,如下所示:
sub dbh :Private { my ($self,$c) = @_; $c->stash->{dbh} = #get dbh from DBIx::Class here } 谢谢! 解决方法
我总是要看一下.假设您有一个架构对象的实例,您可以通过存储方法获取其Storage对象.假设这是一个
Storage::DBI ,那么有一个
dbh 方法可用于获取数据库句柄.所以:
my $dbh = $c->model( 'My::DB' )->storage->dbh; 应该做的伎俩. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |