【发布时间】:2010-01-21 23:21:51
【问题描述】:
我的 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 的问题吗?
感谢您的帮助!
【问题讨论】:
-
您可以使用Nice::Try 并执行
try { $db->connect } catch( $e ) { say "Error connecting: $e" }之类的操作