Lætitia AVROT:INSERT 0 1 实际上告诉你什么?
💡
原文英文,约700词,阅读约需3分钟。
📝
内容提要
在PostgreSQL中,插入命令的返回状态格式为“INSERT [oid] [rows]”。其中“0”表示对象ID已被移除,“1”表示处理的行数。即使在更新操作中,Postgres仍返回插入标签,可能导致混淆。
🎯
关键要点
- PostgreSQL中的插入命令返回状态格式为'INSERT [oid] [rows]'。
- 其中'0'表示对象ID已被移除,'1'表示处理的行数。
- 自PostgreSQL 12版本起,用户表不再分配内部对象ID,因此总是显示为0。
- 命令标签的构建过程涉及多个源代码文件,主要在src/backend/tcop/cmdtag.c中。
- BuildQueryCompletionString函数负责组装最终的命令标签字符串。
- 在插入操作中,即使发生更新,Postgres仍返回插入标签,可能导致混淆。
🏷️
标签
➡️