繁体   English   中英

在Perl中使用DBI时出错

[英]Error using DBI in perl

我无法在Mac上的当前Perl版本中使用DBI。 当我尝试做一个简单的

my $database = "DBI:Pg:dbname=db;host=localhost";
my $db_user = "user";
my $db_pw = "pw";
my $dbh = DBI->connect($database, $db_user, $db_pw, {'RaiseError' => 1});

我收到以下错误:

 install_driver(Pg) failed: Can't locate DBD/Pg.pm in @INC 
 Perhaps the DBD::Pg perl module hasn't been fully installed,
 or perhaps the capitalisation of 'Pg' isn't right.

我的机器上确实有两个版本的PERL,但我相信我已经成功(使用CPAN)在要用作DBL的版本上安装了DBI。

/Applications/apps/bin/perl -e "use DBI" 

不返回错误。

但是,我不太肯定我使用CPA安装了该模块,因为它以以下消息结尾:

运行make install make测试已返回错误状态,如果没有强行安装将不会安装该命令失败:TURNSTEP / DBD-Pg-2.18.1.tar.gz:make_test NO

我是否需要做其他事情而不是

sudo cpan DBD:PG

我的机器上是否有多个版本的Perl?

更新:我拼错了,应该一直在做sudo CPAN DBI。 从那以后我就做了,但是我仍然遇到同样的错误。

我在这里猜测是因为您没有显示带有完整错误消息的CPAN的整个输出。

我怀疑原因是在绝大多数情况下您都忽略了为PostgreSQL安装开发标头。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM