2012-04-01 55 views
1

我正在嘗試執行數據庫中表中列的遷移。我有一個'姓名'字段,我想將姓名字段中的所有信息遷移到'user_name'字段。在rails上ruby的正確方法是將用戶表中的一列的值複製到同一表中的另一列中?將數據庫表中的一列複製到軌道中同一表中的不同列中

+0

重複[將一列更新爲另一個在Rails遷移中的值](http://stackoverflow.com/questions/5224881/update-one-column-to-value-of-another-in-rails-遷移) – 2013-05-29 20:06:07

回答

3

添加列

add_column :table, :user_name, :string 

,然後運行更新腳本(在MySQL控制檯)

update table set user_name = name; 

或者,如果你不希望保留舊列,你可以just rename it

rename_column :table, :name, :user_name 

rename_column(TABLE_NAME,列名,new_column_name):重命名的列,但保持的類型和內容。

+0

你會在哪裏運行這個「更新腳本」?你可以在軌道控制檯中完成嗎? – Michael 2015-01-31 21:21:21

+0

@Michael,mysql控制檯 – 2015-02-01 05:48:19