当前位置:首页 > 科技 > 正文

密钥名称中的MongoDB点( )

MongoDB不支持其中带有圆点的键,因此在导入之前,您必须预处理JSON文件以删除/替换它们,否则您将为各种问题做好准备。

没有标准的解决方法可以解决此问题,最好的方法过于依赖于具体情况。但是,如果可能的话,我会避免使用任何关键的编码器/解码器方法,因为您将继续永久性地给它带来不便,因为JSON重组可能是一次性的成本。

解决方法

似乎mongo不允许插入带点(。)或美元符号($)的键,但是当我使用mongoimport工具导入其中包含点的JSON文件时,效果很好。驱动程序抱怨试图插入该元素。

这是文档在数据库中的外观:

{
    "_id": {
        "$oid": "..."
    },"make": "saab","models": {
        "9.7x": [
            2007,2008,2009,2010
        ]
    }
}

我是不是做错了,不应该使用带有外部数据的哈希图(例如模型),还是可以以某种方式逃脱点?也许我在想太多类似Javascript的东西。

有话要说...

取消
扫码支持 支付码