質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
Ruby

Rubyはプログラミング言語のひとつで、オープンソース、オブジェクト指向のプログラミング開発に対応しています。

MySQL

MySQL(マイエスキューエル)は、TCX DataKonsultAB社などが開発するRDBMS(リレーショナルデータベースの管理システム)です。世界で最も人気の高いシステムで、オープンソースで開発されています。MySQLデータベースサーバは、高速性と信頼性があり、Linux、UNIX、Windowsなどの複数のプラットフォームで動作することができます。

Ruby on Rails 4

Ruby on Rails4はRubyによって書かれたオープンソースのウェブフレームワークです。 Ruby on Railsは「設定より規約」の原則に従っており、効率的に作業を行うために再開発を行う必要をなくしてくれます。

Q&A

解決済

2回答

7040閲覧

運用中のRailsアプリケーションにおいて、DBのカラムの順序を入れ替えるには

退会済みユーザー

退会済みユーザー

総合スコア0

Ruby

Rubyはプログラミング言語のひとつで、オープンソース、オブジェクト指向のプログラミング開発に対応しています。

MySQL

MySQL(マイエスキューエル)は、TCX DataKonsultAB社などが開発するRDBMS(リレーショナルデータベースの管理システム)です。世界で最も人気の高いシステムで、オープンソースで開発されています。MySQLデータベースサーバは、高速性と信頼性があり、Linux、UNIX、Windowsなどの複数のプラットフォームで動作することができます。

Ruby on Rails 4

Ruby on Rails4はRubyによって書かれたオープンソースのウェブフレームワークです。 Ruby on Railsは「設定より規約」の原則に従っており、効率的に作業を行うために再開発を行う必要をなくしてくれます。

0グッド

2クリップ

投稿2015/06/24 04:15

はじめまして。質問させてください。

タイトルの通りです。運用中のRailsアプリケーションがありまして、DB内に複数のテーブルとカラムがある状態です。
開発を進めていくにあたり、新規機能の追加の際に新たにカラムを追加するということは普通によくあると思うのですが、この順番を入れ替えたいときはどのようにされていますか?

Schemaファイルを書き換えることで対応できそうですが、migrationファイルと連動しているので勝手に変更すべきではなさそうなので、どうすべきか悩んでいます。そもそもカラムの順番なんて気にすべきではないのでしょうか?

(最初の設計が甘かったせいでcreated_atの後にusernameとかがきてちょっと変な感じです...)

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答2

0

lang

1def up 2 change_column :users, :username, :string, after: :id 3end

http://stackoverflow.com/questions/18899011/rails-4-migration-how-to-reorder-columns

投稿2015/06/24 04:31

HokutoTokutake

総合スコア26

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

退会済みユーザー

退会済みユーザー

2015/06/25 11:44

なるほど、、change_columnで after: を使えばよいのですね。。ご回答ありがとうございました!
guest

0

ベストアンサー

たしかに微妙かもしれませんが、RDBのカラムは全部を束ねた「集合」であって、並び順は「*を付けた場合のデフォルト」以上の意味を持たないので、特に気にしないことにしています(Rails内部でも列名で参照しているわけですし、変える手間に見合うだけの理由もほぼないでしょう)。

なお、作成時にはカラム位置を指定できるとのことです(Qiita)。

投稿2015/06/24 04:25

maisumakun

総合スコア145184

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

退会済みユーザー

退会済みユーザー

2015/06/24 04:34

なるほど。そういう考え方ははじめて知りました。私自身Railsを導入する以前はphpMyAdminやSequelなどで手動で並び替えて対応してきていたので、ここにきてやはり違和感を感じてしまいます... 参考りんくありがとうございます。作成時に位置を指定できるのは知っていたのですが、後になって気がつくといったケースが多くて困っていました...
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問