0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

Ruby on Railsのデータベース関連のまとめ

Last updated at Posted at 2024-12-02

テーブルやカラム作成やカラム追加、カラム削除、データ型変更について書いておきます。
変更に伴い、カラムのデータ型の確認やデータ削除などの付随作業も書いておきます。
仕様 Ruby on Rails SQLite3 Ubuntu

1.テーブル作成

1.1 命名規則

命名規則(テーブル名、カラム名共通)

  • 大文字を利用しない
  • ローマ字ではなく英語を使用する
  • 複数の単語を使う場合は_でつなげる。(hoge_example)
  • 略語は使用しない(後々、何かわからなくなるため)

命名規則(テーブル名)

  • 複数形を使う。(~s)
  • 複数の単語を使う場合も、複数形を使用する。(hoges_examples)

命名規則(カラム名)

  • ステータス(格納するデータ)を表す
  • flgなどの略語を使用しない
  • DATE型のカラムには名前を「受動態_on」(closed_on)
  • TIMESTAMP型のカラムには名前を「受動態_at」(create_at)

1.2 データ型について

  • string : 文字列
  • text : 長い文字列
  • integer : 整数
  • float : 浮動小数
  • decimal : 精度の高い小数
  • datetime : 日時
  • timestamp : タイムスタンプ
  • time : 時間(年、月、日は変更できないデフォルト値)
  • date : 日付
  • binary : バイナリデータ(0,1)
  • boolean : Boolean(true,false)

1.3 コマンド入力

ターミナルにて下記コマンドを入力。

.console
rails g model User user_id:integer

rails g model テーブル名 カラム名:データ型
※モデル名は必ず最初を大文字にして、単数形にすること。

1.4 ファイル確認

db/migrate/作成日時_create_テーブル名.rb

def change
    create_table :user do |t|
      t.integer :user_id

      t.timestamps
    end
  end

t.データ型 :カラム名
自動的に入力されるがされない場合もあるので注意。

1.5 コマンド入力

ターミナルにて下記コマンドを入力。

rails db:migrate

これでテーブルが作成が反映されました。

2 テーブル削除

2.1コマンド入力

ターミナルにて下記コマンドを入力。

rails d model User

rails d model テーブル名

2.2 コマンド入力

ターミナルにて下記コマンドを入力。

rails db:migrate

これでテーブルが削除を反映。

3 カラム追加

3.1 コマンド入力

ターミナルにて下記コマンドを入力。

rails g migration AddUser_idColumnsToUsers user_id:integer

rails g migration Add追加するカラム名ColunmsToテーブル名 カラム名:データ型

3.2 ファイル確認

db/migrate/作成日時_add_user_id_colunms_to_usres

def change
    add_column :users, :user_id, :integer
end

add_column :テーブル名, :カラム名, :データ型

3.3コマンド入力

ターミナルにて下記コマンドを入力。

rails db:migrate

これでカラムの追加を反映。

4 カラムのデータ型確認

4.1 コマンド入力(データ型の確認)

ターミナルで下記コマンドを入力。

rails c

railsコンソールに入る。

app(dev)>User.columns_hash['user_id'].type
=> :integer

=>:データ型
これで確認できます。

5 データ型の変更

5.1 コマンド入力

ターミナルで下記コマンドを入力。

rails g migration ChangeUserIdToStringInUsers

rails g migration Changeカラム名Toデータ型Inテーブル名

5.2 ファイル確認

db/migrate/作成日時_ChangeUserIdToStringInUsers

def change
    change_column :users, :user_id, :string
end

change_column :テーブル名, :カラム名, :変更後データ型

5.3 コマンド入力

ターミナルにて下記コマンドを入力。

rails db:migrate

これでカラムのデータ型の変更を反映。

参考元

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?