1
单独创建数据表appoints
rails g migration CreateAppoints name:string number:string
2
为数据products表中增加字段
一次性增加1个字段
rails g migration AddPartNumberToProducts part_number:string #增加part_number字段
一次性增加1个字段并添加索引
rails g migration AddPartNumberToProducts part_number:string:index #增加part_number字段并添加索引
为字段增加索引
class AddPartNumberToProducts < ActiveRecord::Migration[5.0]
def change
add_column :products, :part_number, :string
add_index :products, :part_number
end
end
一次创建多个字段
rails migration AddDetailsToProducts part_number:string price:decimal
3
为数据表中删除字段
rails g migration RemovePartNumberFromProducts part_number:string
4
创建联结数据表
不用必须先创建customers、products
rails g migration CreateJoinTableCustomerProduct customer product
5
带有references 字段类型参数的数据表创建
rails g migration AddUserRefToProducts user:references
class AddUserRefToProducts < ActiveRecord::Migration[5.0]
def change
add_reference :products, :user, foreign_key: true
end
end
6
修改表字段名称
rails g migration ChangeCloumnToUsers
class ChangeCloumnToUsers < ActiveRecord::Migration[5.1]
def change
rename_column :users, :name, :username
end
end
注释:将users表中的name字段修改为usename字段
修改表字段类型
rails g migration ChangeColumToUsers
class ChangeColumToUsers < ActiveRecord::Migration[5.1]
def change
change_column :users, :part_number, :integer
end
end
注释:将users表中的part_number字段的string类型修改为integer类型
注:
若修改的字段比较多,可使用以下方法
rails g migration ChangeTableUsers
class ChangeTableUsers < ActiveRecord::Migration[5.1]
def change
change_table :users do |t|
t.remove :username
t.string :age
t.rename :part_number, :upc_code
end
end
end