我想读取 Oracle 中的一个表,其中包含用于检查每个数据库链接的可用性的数据库链接,并且只返回每个数据库链接的错误结果和错误消息。
我想把这个lookup table fetch成一个数组,然后把db_link的entries传给一个select from dualQdb_link,测试lookup的所有entry来测试成功或者失败。这在 perl 中似乎很难实现。
有什么想法吗?
最佳答案
看起来很简单,像这样:
# Or whatever the column is really named ;)
my $dblinks = $dbh->selectcol_arrayref("select dbname from db_link");
for my $dblink (@$dblinks) {
my $success = eval {
my ($ret) = $dbh->selectrow_array("select 1 from "
. $dbh->quote_identifier($dblink, undef, "dual") );
$ret;
};
if ($success) {
say "$dblink is up";
} else {
say "$dblink is down";
}
}
关于database - 使用 Perl 从@db_link 中选择 1,其中 db_link 来自查找表的每个条目,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2348977/