是否存在用于数据库结构更改的版本控制系统?


只怕再见是故人
2025-03-29 05:35:28 (4天前)

我经常遇到以下问题。

我正在对项目进行一些更改,这些更改需要数据库中的新表或新列。我进行数据库修改并继续我的工作。通常,我记得记下更改,以便可以在实时系统上复制它们。但是,我并不总是记得自己所做的更改,也并非总是记得写下来。

因此,我推动了实时系统,并得到了一个很大的,明显的错误,那就是,没有NewColumnX。

不管这可能不是这种情况的最佳实践,是否存在数据库的版本控制系统?我不在乎特定的数据库技术。我只想知道是否存在。如果碰巧可以与MS SQL Server一起使用,那就太好了。

2 条回复
  1. 1# 春风助手 | 2020-08-19 16-41

    在Ruby on Rails中,有一个迁移的概念-一种用于更改数据库的快速脚本。

    您将生成一个迁移文件,该文件具有增加数据库版本的规则(例如添加列)和具有降级版本的规则(例如删除列)。每个迁移都有编号,并且有一个表跟踪您当前的数据库版本。

    要向上迁移,请运行一个名为“ db:migrate”的命令,该命令将查看您的版本并应用所需的脚本。您可以通过类似的方式向下迁移。

    迁移脚本本身保存在版本控制系统中-每当您更改数据库时,都需要签入新脚本,任何开发人员都可以应用该脚本将其本地db更新到最新版本。

登录 后才能参与评论