データベース内の表の列の移行を試みています。私は '名前'フィールドを持っており、名前フィールドのすべての情報を 'user_name'フィールドに移行したいと考えています。同じテーブルの別の列にユーザーテーブルの1つの列の値をコピーするためのレール上のルビーの正しい方法は何ですか?データベース表の1つの列を、同じ表の別の列の列にコピーします。
1
A
答えて
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、COLUMN_NAME、new_column_name):列の名前を変更しますが、タイプおよびコンテンツを保持します。
+0
この「更新スクリプト」はどこで実行しますか?あなたはレールコンソールでそれを行うことができますか? – Michael
+0
@Michael、mysql console –
[Railsの移行で1つの列を別の列の値に更新](http://stackoverflow.com/questions/5224881/update-one-column-to-value-of-another-in-rails-移行) –