日期:2014-05-16  浏览次数:20541 次

关于数据库中表字段顺序调整的问题

前段时间,有人问我, 有一个关于Oracle中表字段顺序调整的问题。首先这样做对于数据库有没有坏的影响,其次有没有比较简单的方法或者工具可以解决这个问题。

其实这个问题,对于大多数关系型DBMS,也都很常见。 对NoSQL DB而言,反而没什么影响。

调整字段顺序,看你往什么方向调整。

在数据量少的情况下,调整都比较快。数据量大,一般倾向于先建新表,入数据,再删旧表。

理想的字段顺序是:

简单的,短值字段在前,复杂的,非结构化的长值字段在后(如BLOB字段通常放到最后)。

带索引的字段在前,不带索引的字段在后。

常读取的字段在前,不常读取的字段在后。

主键字段在前,非主键字段在后。

复合主键字段顺序与表中字段顺序一致。