Skip to main content
客户端协议参考文档仍在编写中。大多数示例仅有 Go 版本。
本文档介绍 ClickHouse TCP 客户端使用的二进制协议。

Varint

对于长度、数据包代码及其他情况,使用的是无符号 varint编码。 请使用 binary.PutUvarint 和 binary.ReadUvarint。
不使用有符号 varint 编码。

String

可变长度字符串编码为 (length, value),其中 length 是 varint,value 是 UTF-8 字符串。
验证长度以防止 OOM:0 ≤ len < MAX

整数

ClickHouse 对定长整数采用 小端序 (Little Endian) 。

Int32

布尔值

布尔值用单个字节表示,1 表示 true,0 表示 false。
最后修改于 2026年6月10日