`
wangsir_81
  • 浏览: 20135 次
  • 性别: Icon_minigender_1
  • 来自: 北京
文章分类
社区版块
存档分类
最新评论

migration数据库迁移命令和迁移任务编写

阅读更多

Rails 数据库迁移命令的写法整理

 

创建迁移任务

    rails g migration migration_name

    一般创建完后,生成文件里有两个action,一个up(rails3.0以下版本是self.up),用于存放你要改变数据的指令,一个down(rails3.0以下版本是self.down),用于存放恢复刚才up的操作的指令。

    3.1版rails开始,增加了change方法,它相当于以前的up,神奇的是它会自动推测你down的方法。如果有些up或down操作是不可逆的,建议还是自己写up和down方法。

 

创建表

    create_table(table, options) do |t|

        ...columns...

    end

 

删除表

    drop_table(table)

 

重命名表

    rename_table(table_old_name, table_new_name)

 

增加数据表的字段

    add_column(table, column, type, options)

 

删除数据表中的字段

    remove_column(table, column)

 

重命名数据表中的字段

    rename_column(table, column_old_name, column_new_name)

 

修改数据表的字段

    change_column(table, column, type, options)

 

给表字段添加默认值

    change_column_default(table_name, column_name, default_value)

 

增加索引

    add_index(table, column, options)

 

删除索引

    remove_index(table, column)

 

还可以直接写sql语句执行

    execute(sql_string)

 

我们写上边这些命令是为了将其变动应用到数据库,那我们需要执行以下命令来实现。

    rake db:migrate

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics