为什么我使用Perl的DBI-> connect会无声地失败?

为什么我使用Perl的DBI-> connect会无声地失败?,第1张

概述为什么这段代码会无声失败?我如何让它向我展示SQL错误究竟是什么? $dbh=DBI->connect($db_name,$db_user,$db_pass); 我将代码修改为如下所示: $dbh=DBI->connect($db_name,$db_user,$db_pass) or die("could not connect to db: $db_name"); 而不是允许我使用$d 为什么这段代码会无声地失败?我如何让它向我展示sql错误究竟是什么?

$dbh=DBI->connect($db_name,$db_user,$db_pass);

我将代码修改为如下所示:

$dbh=DBI->connect($db_name,$db_pass)    or dIE("Could not connect to db: $db_name");

而不是允许我使用$dbh unassigned,它将按预期失败,但它并没有告诉我它为什么失败.就我所见,$db_name等的值都设置为有效值.

我知道真正的错误(MysqL服务器实际上没有运行)但是为了将来的参考,我希望看到真正的错误,例如我导致auth失败.

解决方法 您没有看到连接失败的原因,因为您没有按照 DBI所示的那样做.错误将在$DBI :: errstr变量中:

$dbh = DBI->connect($data_source,$username,$password)     or dIE $DBI::errstr;

确保您阅读了要使用的任何功能或方法的文档. 总结

以上是内存溢出为你收集整理的为什么我使用Perl的DBI-> connect会无声地失败?全部内容,希望文章能够帮你解决为什么我使用Perl的DBI-> connect会无声地失败?所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/1213587.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-04
下一篇 2022-06-04

发表评论

登录后才能评论

评论列表(0条)

保存