我正在尝试使用 Array 或 Hash 编写 Rose::DB::Object 查询字符串,但是我不确定该怎么做。我正在尝试根据数组中枚举的列表中的某些 ID 编写更新函数。不幸的是,我没有任何其他唯一键来过滤以构建查询,所以我需要查询特定的 ID。
本质上,我正在尝试以编程方式编写以下内容:
my $list = My::DB::Manager->get_items(query => [
{id => 1},
{id => 14},
{id => 210},
{id => 1102},
{id => 3151},
]);
这是我到目前为止的代码,但我无法成功实现我想要做的事情:
use My::DB::Manager;
my @ary;
foreach (@_) {
my %col = ("id", $_);
push (@ary, \%col);
}
my $list = My::DB::Manager->get_items(query => \@ary);
...
./test.pl
现在脚本只是无限期地挂起,没有输出。
我试图避免遍历 DB::Manager 并在每条记录的基础上进行 DB 调用,因为此脚本将每 60 秒通过 cron 运行一次,并且有可能返回大集合。