行业资讯
简单数据库迁移实践
2017-06-23 09:41:51
现在NoSQL流行,有一个原因也是因为不需要去刻意处理table的schema,直接存储数据,这样简单!所以也不会有数据库表的迁移问题。数据库表迁移这一块儿一直是一个麻烦点,但我最近用了sqlite3做了个小项目,所以总结下数据库迁移的方案。
原理
每一次数据表改动,都对应一个数据库版本号
数据迁移是渐进式的,比如把数据库版本从1 升级到n,那么就升级n-1次,版本1到2,2到3,直到n-1到n。
实施
1. 使用sqlite3的user_version 存贮自定义的数据库版
/*设置版本号*/
PRAGMA user_version=1;
/*读取版本号*/
PRAGMA user_version;

2. 所有的数据库升级文件,放在一个文件中,都直接使用sql文件,方便直接查看管理。文件结构如下