当前位置:  开发笔记 > 编程语言 > 正文

如何为旧数据库创建迁移?

如何解决《如何为旧数据库创建迁移?》经验,为你挑选了1个好方法。

我目前正在使用在我意识到Rails存在之前设计的数据库开发Rails应用程序.
我目前已经创建了一些迁移,以向现有表添加一些新表和新列.

我想让迁移重新创建完整的数据库.

我应该遵循哪些步骤?
我应该手动创建所有迁移吗?

编辑:我感兴趣的是不在数据库内容中的数据库模式



1> scottd..:

当我们将PHP应用程序移植到rails时,我们遇到了这个问题.我们所做的与tomtoday的建议类似.首先,我们将rails配置指向当前数据库.然后我们做了一个rake db:schema:dump并将db/schema.rb文件复制到db/schema_base.rb之类的东西.然后,您进行第一次迁移加载该架构.例如:

class CreateTables < ActiveRecord::Migration
  def self.up
    `cp #{Rails.root}/db/schema_base.rb #{Rails.root}/db/schema.rb`
    Rake::Task['db:schema:load'].invoke
  end

  def self.down
  end
end

只需强迫这是第一次迁移,你就会开始.然后,您开始编写迁移以将数据库转换为更符合Rails方式.我们编写了迁移以正确重命名id列,外键关系,表名等.
请记住,架构转储不支持外键约束和触发器(如果使用它们).

推荐阅读
刘美娥94662
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有