有时候更新开源项目的版本,发现git上面数据库文件的表结构发生了变化时,怎样把旧的表数据更新升级呢
第一步,先点击git上的数据库文件(sql文件),查看它的历史,然后对比一下本地文件的更改日期,从这个日期开始,查看每个历史的变更详情。
第二步,复制变更详情中发生变化的建表语句,到数据库中把要更新的表重命名,创建新的表结构,如果只是字段长度或者索引发生了变化,那我们只需要运行 “insert into new_table_name select * from old_table_name” ;
如果字段名字变了,或者有字段发生增加减少的变化,就运行 “insert into new_table_name(filed1, 2, 3, ...) select (filed2, 3, 4,. ..) from old_table_name”,这样就可以把旧表数据更新到新表上面去了
第三步, 运行一下新的项目代码,看看有没有问题,没问题就可以把就旧表删除了,有问题,则查看一下是不是有哪的业务仍然和旧表有关系,处理一下。
这样就可以既保留数据又更新表结构了。
领取专属 10元无门槛券
私享最新 技术干货