gpt4 book ai didi

database - 如何捕捉到不存在的 Rose::DB 数据库的连接失败?

转载 作者:搜寻专家 更新时间:2023-10-30 23:24:10 26 4
gpt4 key购买 nike

我的 Perl 应用程序在 Windows XP 上使用 Rose::DB、Rose::DB::Object (ORM) 和 Tk。我需要检查数据库连接信息(主机、端口、数据库名称、用户、密码)是否导致有效连接。如果我调用 $db->connect并使用例如一个不存在的测试主机,Rose::DB 说:

DBI connect('dbname=my_db;host=192.168.70.85;port=5432','postgres',...) failed: <br/>could not connect to server: No route to host (0x00002751/10065)

我如何捕获它并为我的应用程序创建一条新消息?这是一个关于 try/catch 的问题吗?

感谢您的帮助!

最佳答案

John 向我发布了一个到目前为止似乎有效的解决方案:


my $ok = eval { $db->connect };<br/>



<pre><code>if(!$ok || $@) { # Connection failed }
</code></pre>

关于database - 如何捕捉到不存在的 Rose::DB 数据库的连接失败?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2109831/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com