MongoDB默认_id字段

一、_id字段的含义及用途

插入MongoDB表数据的每一条文档, 都应该有一个唯一标识,去区分每一条文档。

即每一张表都要有对应的主键(可以指定,不指定时MongoDB默认主键是_id),为指定主键时,在每一条文档被插入到集合后,MongoDB都会自动增加主键,MongoDB中文档主键的名称叫做 _id

二、_id数据类型及长度

_id的数据类型是ObjectId。ObjectId是轻量型的,不同的机器都能全局唯一的生成它;

ObjectId的长度为12字节(24位):

0-3字节: 表示时间戳

4-6字节: 表示主机的唯一标识符。【确保不同主机生成的ObjectId是唯一的】

7-8字节: 表示进程id。【确保同一机器上并发的多个进程产生的ObjectId是唯一的】

9-11字节:表示计数器。【确保同一机器上同一进程同一秒产生的ObjectId是唯一的】

相关推荐
吠品7 小时前
PG_GBK 与 PG_UTF8 编码冲突:一次数据导入踩坑复盘
数据库
lld9510277 小时前
我做了一个 AI Agent Skill 云:用 MCP 在 Claude Code、Codex、OpenCode 之间同步技能
数据库·人工智能
辉灰笔记8 小时前
MySQL8 意外关机/误移data目录导致服务启动失败 PID报错/权限报错 修复文档
linux·数据库·mysql·centos
麦聪聊数据8 小时前
电商大促数据库管控(下):数据需求小时级交付与全链路安全管控
数据库
喜欢的名字被抢了9 小时前
MySQL核心机制:事务、锁与存储引擎
数据库·sql·mysql·教程
JosieBook9 小时前
【数据库】时序数据库通过国测认证,TimechoAI开放体验:工业数据的“存”与“智”如何协同?
数据库·时序数据库
卓怡学长10 小时前
w263基于springboot + vue 健康饮食管理系统
java·数据库·vue.js·spring boot·spring·intellij-idea
阿演12 小时前
DataDjinn v0.2.11:SQL 编辑、AI 协作和表格操作继续打磨
数据库·人工智能·sql
不坑老师12 小时前
Excel总表如何按班级拆分并分别发送?
前端·数据库·人工智能·excel·ppt·office
智脑API平台13 小时前
Codex 国内使用会封号吗?账号安全、中转站和合规边界说明
数据库·redis·缓存