V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
Livid
V2EX  ›  程序员

关于改表

  •  
  •   Livid · 2011-10-21 04:20:32 +08:00 · 5112 次点击
    这是一个创建于 4765 天前的主题,其中的信息可能已经有所发展或是发生改变。
    如果你在一个多人分工的网站项目中,你需要改动一个已经上线了的产品的表结构(ALTER TABLE),那么,在你们团队中,通常是用一个什么样的流程来解决呢?
    5 条回复    1970-01-01 08:00:00 +08:00
    no2x
        1
    no2x  
       2011-10-21 09:15:30 +08:00
    本地準備好 版本 和 SQL,

    凌晨時分停站,更新 SQL 更新代碼版本,測試,上線。
    fsw90628
        2
    fsw90628  
       2011-10-21 19:51:36 +08:00
    1)项目中,有一个文件管理数据库的schema和对应的SQL语句,
    2)每次表的升级都要经过schema定义文件(推荐使用yml,比xml简单许多),并且生成对应的SQL语句,
    3)每一次升级都有对应的版本号,在数据库中也有体现,
    4)还需要同时准备好升级和回滚的SQL语句,以防万一,
    5)当然,都在Version Control之下。
    fsw90628
        3
    fsw90628  
       2011-10-21 19:54:03 +08:00
    Version control system is a good place to communicate with teammates, maybe.
    imonyse
        4
    imonyse  
       2011-10-21 20:07:27 +08:00
    Rails的做法,就是用Migrations控制数据库的schema,这个也算是Rails的杀手级特性吧。
    skywinger
        5
    skywinger  
       2011-10-21 20:10:16 +08:00
    @imonyse 好办法
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   5672 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 44ms · UTC 01:36 · PVG 09:36 · LAX 17:36 · JFK 20:36
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.