r - 这是 mongolite 包中的错误吗?

标签 r mongodb mongolite

您好,我正在尝试使用 mongolite 包更新 mongodb 中的集合,但我无法弄清楚为什么我的查询失败(谷歌没有帮助)。

我正尝试运行更新命令,但我收到错误消息,提示时间戳无效:

files$update(
  query  = "{\"FileId\" : \"F0FFFBDA14E1D49547C24CD5150\" }",
  update = "{ \"$set\" : {\"Contract\" : \"1\"},  
              \"$currentDate\" : {\"Updated\" : { \"$type\" : \"timestamp\" } }  }")

Error: Invalid input string timestamp, looking for 6

这是我要更新的对象:

{ "_id" : ObjectId("59d3fc93ec2d602b7967f4a7"), 
    "Client" : "Someone", 
    "FileId" : "F0FFFBDA14E1D49547C24CD5150"
}

我非常确定我的查询是正确的,我能够在 mongo shell 客户端中执行它。

最佳答案

使用 mongolite 的文档我发现了如何添加我自己的时间戳,这恰好是现在的时间。

基本上,我没有使用 $currentDate 运算符,而是使用了 $set 并使用了一点 R 代码,我想出了我应该设置什么值 Updated 字段:

sub(
  "NOW",
  format(Sys.time(), "%Y-%m-%dT%H:%M:%SZ", 'EST'),
  '"$set" : {"Updated" : "NOW"}'
)

参见 documentation了解更多详情。

关于r - 这是 mongolite 包中的错误吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46555723/

相关文章:

regex - (跳过)(失败)字符串解析错误

javascript - Mongo : Is it a good practice to do collection. find() 返回主节点上的所有项目

mongodb - MongoDB 是否适合某些用例?

r - 在 mongolite R 库中获取 ObjectID

r - Mongolite - 明显太大,16mb 上限

c++ - 在 Windows 中将 rinside 与 qt 一起使用

r - 如何在 R Bookdown 中渲染实际的 a6 纸张尺寸?

r - 聚类图。添加簇号: Function fviz_cluster (factoextra)

node.js - 推荐的数据结构(不查询 node.js 中的嵌套数据)

R : Updating an entry in mongodb using mongolite