最近由于工作的需要,对一个老的程序框架进行升级,其中涉及到了数据库的变更,现总结经验如下,以备后续参考。
首先,数据库表的结构不合理。虽然数据库的建立需要遵循一定的范式,但如果主键属性设置不合理,或外键属性设置不当,将会对后续的升级带来较大的困难。
如此次升级时,发现一个关键表格的主键属性设置不当,没有考虑到兼容性,导致主键可能重复的情况。同时,其他表格与此表关联时的外键亦是该主键,导致升级工作比较繁琐。
其次,使用数据库时,尽量使用视图及存储过程。因为在数据库升级时,需要对相关 表格进行更改升级,故对表格的查询等操作需要重新设置。但如果是对视图的查询,则可以在更改表格时,尽量维持视图的完整性与连贯性,这样就可以最大程度的避免对相关程序的更改。
最后,注意查询效率的提升。