# 为什么一个现代化的框架应该具备 Migration 功能

- Link: https://www.ixiqin.com/2019/02/06/why-should-a-modern-framework-have-migration-function/
- Published: 2019-02-06T09:29:39+08:00
- Author: 白宦成

在过去刀耕火种的编程年代，程序员写代码的时候都是手动创建表

![](https://files.ixiqin.com/2019/02/23065706/image-1.png?fit=1024%2C434&ssl=1)

创建数据库的 SQL

但是，在开发过程中，难免会遇到需要对表结构进行修改，在一些小型团队中，尚且可以通过
喊一声，大家都执行同样的操作来完成，确保各自的数据结构的一致性。

随着开发流程的变长、开发人员数目的增多、远程工作的流行，这种方案显然不可行。

因此，就出现了 Migration 。Migration 是将数据库的变化以代码的形式存储起来。一个人
在进行数据库修改时，使用 Migration 进行操作，其他人只要执行对应的 Migration ，就
可以进行数据库结构的同步。

![](https://files.ixiqin.com/2019/02/23065706/image-2.png?fit=1024%2C281&ssl=1)

rails 的 migration

一个现代化的框架，应该有 Migration。
