我想更新我的数据库中的所有记录(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”。 但它没有用,所以我怎么能这样做? 我在等你的答案。谢谢。
答案 0 :(得分:1)
MongoDB模块似乎使用multiple
关键字而不是multi
:
$res->update(
{'person' => 'omer' },
{'$set' => { 'canbeseen' => "oha" } },
{'multiple' => "true" }
);
multiple
将更新符合$条件的所有文档,而不仅仅是找到的第一个文档。 (仅适用于数据库版本1.1.3及更高版本。)