• MongoDB 对象主键 ObjectId


    常规主键

    生成

    > ObjectId()
    ObjectId("5d7f4c36a7b5867462dee50e")
    

    提取生成的时间

    > ObjectId("5d7f4c36a7b5867462dee50e").getTimestamp()
    ISODate("2019-09-16T08:47:50Z")
    

    复合主键

    主键也可以使用对象来表示,即复合主键。

    创建复合主键文档

    > db.accounts.insert({ _id:{ "name" : "david", "balance" : 200 },"name" : "charlie", "balance" : 500 })
    WriteResult({ "nInserted" : 1 })
    

    复合主键文档ID重复性判断

    > db.accounts.insert({ _id:{ "name" : "david", "balance" : 200 },"name" : "charlie", "balance" : 500 })
    WriteResult({
     "nInserted" : 0,
     "writeError" : {
      "code" : 11000,
      "errmsg" : "E11000 duplicate key error collection: test.accounts index: _id_ dup key: { _id: { name: "david", balance: 200.0 } }"
     }
    })
    # 复合主键对象key的顺序、value值、value值的类型等完全一样,方认为复合主键冲突。
    > db.accounts.insert({ _id:{ "balance" : 200, "name" : "david" },"name" : "charlie", "balance" : 500 })
    WriteResult({ "nInserted" : 1 })
    
  • 相关阅读:
    doker基础用法
    docker容器技术基础入门
    流模式
    装饰器模式
    适配器模式
    组合模式
    桥接模式
    观察者模式
    注册模式
    模板模式
  • 原文地址:https://www.cnblogs.com/zy108830/p/12639560.html
Copyright © 2020-2023  润新知