↑↓ 选择 ↵ 打开 ⌫ 改范围 完整检索页

pgsql.cc 提供对 postgresql.org 官网内容的中文翻译,由 Pigsty 团队维护。

百科 / 协议消息 / 后端消息

CommandComplete

Byte1('C') 将该消息标识为命令完成响应。 Int32 消息内容的长度(以字节为单位),包括其自身。 String 命令标签。通常是一个单词,用来标识已完成的 SQL 命令。 对于 INSERT 命令,标签是 INSERT oid rows ,其中 rows 是插入的行数。如果 rows 为 1 且目标表具有 OIDs,则 oid 曾经是插入行的对象 ID,但不再支持 OIDs 系统列;因此 oid 总是 0。 对于 DELETE 命令,标签是 DELETE rows ,其中 rows…

当前查看 PostgreSQL 18。

中文定义与说明

协议消息 CommandComplete (B)。

同版本中文手册定义

Byte1('C')

将该消息标识为命令完成响应。

Int32

消息内容的长度(以字节为单位),包括其自身。

String

命令标签。通常是一个单词,用来标识已完成的 SQL 命令。

对于 INSERT 命令,标签是 INSERT oid rows,其中 rows 是插入的行数。如果 rows 为 1 且目标表具有 OIDs,则 oid 曾经是插入行的对象 ID,但不再支持 OIDs 系统列;因此 oid 总是 0。

对于 DELETE 命令,标签是 DELETE rows,其中 rows 表示删除的行数。

对于 UPDATE 命令,标签是 UPDATE rows,其中 rows 是更新的行数。

对于 MERGE 命令,标签是 MERGE rows,其中 rows 是插入、更新或删除的行数。

对于 SELECT 或 CREATE TABLE AS 命令,标签是 SELECT rows,其中 rows 是检索到的行数。

对于 MOVE 命令,标签是 MOVE rows,其中 rows 表示游标位置改变的行数。

对于 FETCH 命令,标签是 FETCH rows,其中 rows 是从游标中检索出的行数。

对于 COPY 命令,标签为 COPY rows,其中 rows 是复制的行数。(注意:行数仅出现在 PostgreSQL 8.2 及更高版本中。)

查看完整中文手册与上下文。

说明

Byte1('C') 将该消息标识为命令完成响应。 Int32 消息内容的长度(以字节为单位),包括其自身。 String 命令标签。通常是一个单词,用来标识已完成的 SQL 命令。 对于 INSERT 命令,标签是 INSERT oid rows ,其中 rows 是插入的行数。如果 rows 为 1 且目标表具有 OIDs,则 oid 曾经是插入行的对象 ID,但不再支持 OIDs 系统列;因此 oid 总是 0。 对于 DELETE 命令,标签是 DELETE rows ,其中 rows 表示删除的行数。 对于 UPDATE 命令,标签是 UPDATE rows ,其中 rows 是更新的行数。 对于 MERGE 命令,标签是 MERGE rows ,其中 rows 是插入、更新或删除的行数。 对于 SELECT 或 CREATE TABLE AS 命令,标签是 SELECT rows ,其中 rows 是检索到的行数。 对于 MOVE 命令,标签是 MOVE rows ,其中 rows 表示游标位置改变的行数。 对于 FETCH 命令,标签是 FETCH rows ,其中 rows 是从游标中检索出的行数。 对于 COPY 命令,标签为 COPY rows ,其中 rows 是复制的行数。(注意:行数仅出现在 PostgreSQL 8.2 及更高版本中。)

方向
后端 → 前端
首个线上协议字段
Byte1('C')
字段条目
3
手册中的交互阶段
简单查询;扩展查询;COPY 操作

用法

CommandComplete (B)

消息边界与重复字段

下方完整定义保留重复项、计数与条件字段。表格行号表示文档中的字段定义,并非固定字节偏移量。整数编码与交互流程以同版本协议章节为准。

按手册顺序排列的线上协议字段

位置格式含义
1Byte1('C')将该消息标识为命令完成响应。
2Int32消息内容的长度(以字节为单位),包括其自身。
3字符串命令标签,通常是标识已完成 SQL 命令的一个单词。对于 INSERT,标签为 INSERT oid rows,rows 是插入行数。oid 过去在 rows 为 1 且目标表具有 OID 时表示所插入行的对象 ID;由于 OID 系统列已不再受支持,oid 始终为 0。对于 DELETE,标签为 DELETE rows,rows 是删除行数。对于 UPDATE,标签为 UPDATE rows,rows 是更新行数。对于 MERGE,标签为 MERGE rows,rows 是插入、更新或删除的行数。对于 SELECT 或 CREATE TABLE AS,标签为 SELECT rows,rows 是检索行数。对于 MOVE,标签为 MOVE rows,rows 是游标位置移动的行数。对于 FETCH,标签为 FETCH rows,rows 是从游标检索的行数。对于 COPY,标签为 COPY rows,rows 是复制行数;行数仅在 PostgreSQL 8.2 及以后版本中出现。

相关条目

文档与源码

来源构建
版本
18.6
构建
https://ftp.postgresql.org/pub/source/v18.6/postgresql-18.6.tar.bz2
来源指纹
555610c24d53e4316da5b7d3fc25c279d96856d5e0e23ee308c328c5fa881d9f

版本比较

PostgreSQL 17 → 18: 无变化。

比较已记录的接口与属性,排除来源指纹和构建元数据。某个样本中没有记录,不能据此判断实际引入或移除的版本。

相关条目

导出 JSON · 返回协议消息 · 收录范围为 PostgreSQL 10 至 20;最早采样版本不一定是实际引入版本。