更新时间:2026-02-06 GMT+08:00
分享

GaussDB单表支持的最大列数?

答:1600列,但具体数值会因字段类型不同而变化。建表时不校验字段类型,数据存入时进行校验。例如bigint类型字段每个占用8字节数据,1600列总占用12800字节,超过单页容量8KB时插入会报错。

字段超长时可能存储到toast表,具体逻辑如下:

  1. 元组总长度超过2KB时,优先尝试压缩最长列;
  2. 压缩后仍超限且字段长度超过toast元信息开销(24字节)时,才启用toast表存储;
  3. toast表以列为维度存储完整数据,主表仅保存查询元信息;
  4. 在压缩后,无论是否存放toast表(存toast表时主表需额外存储toast表的元信息;不存toast表时主表存放压缩后的列数据),单行总长度超过单页大小8KB时均会报错。

相关文档