可能占。数组存储在表中的一行是这种形式rowid | 列1信息(类型,长度),列1数据 | 列2信息,列2 数据 | ………… 当为null的字段在一条记录的最后,就是说他后边没有非null的字段值时,是不占空间的 当为null的字段在一条记录的中间,就是说他后边还有非null的字段值时,他占一个字节 所以oracle建议在设计表结构时尽量把可空的字段放到最后! 补充:对于数据库中的 展开
可能占。数组存储在表中的一行是这种形式rowid | 列1信息(类型,长度),列1数据 | 列2信息,列2 数据 | ………… 当为null的字段在一条记录的最后,就是说他后边没有非null的字段值时,是不占空间的 当为null的字段在一条记录的中间,就是说他后边还有非null的字段值时,他占一个字节 所以oracle建议在设计表结构时尽量把可空的字段放到最后! 补充:对于数据库中的一条数据,应该算是横排,rowid | 列1信息(类型,长度),列1数据 | 列2信息,列2 数据 | …………也就是列1都可能为空,那你就在建表的时候尽量把它放到最后一个字段。让数据变成这样。。rowid | 列2信息,列2 数据 | …………| 列1信息(类型,长度),列1数据 对了,我上面列出来的不是你所看到,而是数据在DB中的实际存储的结构。你看到的,应该是:列1数据 | 列2 数据 | …………列2 数据 | …………| 列1数据总结下:null数据它本身不占空间,但是如果null这个字段在一行数据的中间时,它需要维护没行数据的结构统一 ,需要占用一点空间。神啊,够详细了吧? 收起