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

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

其实这个问题,对于大多数关系型DBMS,也都很常见。 

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

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

理想的字段顺序是:

  1. 简单的,短值字段在前,复杂的,非结构化的长值字段在后(如BLOB字段通常放到最后)。
  2. 定长字段在前,不定长字段在后
  3. 带索引的字段在前,不带索引的字段在后。
  4. 常读取的字段在前,不常读取的字段在后。
  5. 主键字段在前,非主键字段在后。
  6. 复合主键字段顺序与表中字段顺序一致。

而对NoSQL DB而言,反而没什么影响,因为它们大都基于键值对来存储的。



你可能感兴趣的:(MySQL,PostgreSQL,Oracle,DB2,SAP,Sybase,ASE,SAP,Sybase,ASA,SAP,Sybase,IQ,mysql,MySQL,Mysql,MYSQL,oracle,Oracle,ORACLE,postgresql,postgreSQL,sybase,数据库)