↑↓ select↵ open⌫ change scopeOpen full search

PG.CENTER connects PostgreSQL documentation, reference, and ecosystem knowledge. Maintained by Pigsty.

Wiki / Protocol Messages

DataRow

DataRow is a backend protocol message. Identifies the message as a data row.

Reading PG 18·Select a recorded version

Direction
Backend → frontend
First wire field
Byte1('D')
Field entries
5
Documented flow contexts
Simple Query
direction
B
manual path
/docs/18/protocol-message-formats.html
signature
DataRow (B)

Definition PG 18

Byte1('D')

Identifies the message as a data row.

Int32

Length of message contents in bytes, including self.

Int16

The number of column values that follow (possibly zero).

Next, the following pair of fields appear for each column:

Int32

The length of the column value, in bytes (this count does not include itself). Can be zero. As a special case, -1 indicates a NULL column value. No value bytes follow in the NULL case.

Byten

The value of the column, in the format indicated by the associated format code. n is the above length.

Wire fields in documented order

PositionFormatMeaning
1Byte1('D')Identifies the message as a data row.
2Int32Length of message contents in bytes, including self.
3Int16The number of column values that follow (possibly zero).
4Int32The length of the column value, in bytes (this count does not include itself). Can be zero. As a special case, -1 indicates a NULL column value. No value bytes follow in the NULL case.
5Byte nThe value of the column, in the format indicated by the associated format code. n is the above length.

Compare versions

Complete source facts

fields

map[description:Identifies the message as a data row. format:Byte1('D')], map[description:Length of message contents in bytes, including self. format:Int32], map[description:The number of column values that follow (possibly zero). format:Int16], map[description:The length of the column value, in bytes (this count does not include itself). Can be zero. As a special case, -1 indicates a NULL column value. No value bytes follow in the NULL case. format:Int32], map[description:The value of the column, in the format indicated by the associated format code. n is the above length. format:Byte n]

Source references

Full definition and evidence JSON

Definition sources

center · PostgreSQL 18 · 555610c24d53e4316da5b7d3fc25c279d96856d5e0e23ee308c328c5fa881d9f

Text language: en · 555610c24d53e4316da5b7d3fc25c279d96856d5e0e23ee308c328c5fa881d9f