2026/10/22 7:31:53

从 DDIC Size Category 到数据库空间分配,读懂 SAP 表技术设置背后的设计逻辑

从 DDIC Size Category 到数据库空间分配,读懂 SAP 表技术设置背后的设计逻辑 在SE11里创建一张传统 DDIC Database Table 时,字段和主键定义完成以后,通常还要进入Technical Settings。很多 ABAP 开发人员对这里的Data Class、Buffering、Log Data Changes都比较熟悉,却很容易把Size Category当成一个随手填入的数字。有的项目习惯全部填0,有的开发人员看到预计数据量比较大就直接填4或5,还有一些人会把这个字段理解成数据库表能够保存多少条记录的硬性上限。这些理解都不准确。当前 SAP ABAP Keyword Documentation 对Size Category的定义非常明确,它影响数据库为 DDIC 表准备的初始存储区域大小。当前文档允许使用0到9的值,每一个值都对应一个预期记录数量区间。当初始预留空间不足时,数据库还会按照相应的空间管理方式继续增加新的存储区域,因此它不是Maximum Number of Rows,更不是达到某个记录数以后数据库就拒绝INSERT的容量开关。理解这个参数时,最重要的一件事,是不要被英文文档里的memory area带偏。这里讨论的不是 ABAP Application Server 上的 Shared Memory,也不是 SAP Table Bu