Perl MongoDb多次更新

时间:2012-06-24 11:13:47

标签: perl mongodb

我想更新我的数据库中的所有记录(mongodb),我尝试使用下面的命令来做到这一点 但我无法达成解决方案。

use MongoDB;
my $dbhost = MongoDB::Connection->new(host => '127.0.0.1', port => 27017);
    my $database   = $dbhost->test;
my $res = $database->questions;
$res->update({'person'=>'omer'},{'$set' => { 'canbeseen' =>"oha"}},{"multi" => "true"} );

我想更新所有omer的“canbeseen”。 但它没有用,所以我怎么能这样做? 我在等你的答案。谢谢。

1 个答案:

答案 0 :(得分:1)

MongoDB模块似乎使用multiple关键字而不是multi

$res->update(
  {'person'   => 'omer' },
  {'$set'     => { 'canbeseen' => "oha" } },
  {'multiple' => "true" }
);

来自documentation

  

multiple将更新符合$条件的所有文档,而不仅仅是找到的第一个文档。 (仅适用于数据库版本1.1.3及更高版本。)