OID
对象 ID 为一个12字节的BSON 数据类型,包括如下内容:
- 4 字节精确到秒的时间戳
- 3 字节系统(物理机)标示
- 2 字节进程 ID
- 3 字节由随机数起始的序列号
数据类型的介绍可参考 数据类型。
Json格式
语法
{ “$oid”: }
参数描述
参数名 参数类型 描述 是否必填 data 字符串 12字节16进制字符串。 是
函数格式
语法:
ObjectId( [data] )
参数描述
参数名 参数类型 描述 是否必填 data 字符串 参数为12字节16进制字符串时,生成一个指定值的OID。
参数为空时,生成一个随机的OID。否
返回值
无返回值,出错抛异常,并输出错误信息。可以通过getLastErrMsg()获取错误信息,通过getLastError()获取错误码。关于错误处理可以参考常见错误处理指南。
错误
错误信息记录在节点诊断日志(diaglog)中,可参考错误码。
错误码 | 可能的原因 | 解决方法 |
---|---|---|
-6 | 参数错误 | 请参考示例。 |
示例
插入OID类型的记录
> db.foo.bar.insert( { a: ObjectId() } )
> db.foo.bar.insert( { a: ObjectId( "55713f7953e6769804000001" ) } )
> db.foo.bar.insert( { "_id": { "$oid": "55713f7953e6769804000001" } } )