コピー2022.04.18こんにちは。たいら(@tairaengineer2)です。転職を繰り返し現在4社経験している、11年目エンジニアです。Railsでschema_migrationsテーブルについて丁寧に解説します。前提条件:実行環境についてschema_migrationsテーブルとはまとめ:schema_migrationsテーブルを確認みよう!前提条件:実行環境について実行環境は以下の通りです。RailsのプロジェクトはC:\rails_study\sampleに作成しています。schema_migrationsテーブルとはschema_migrationsテーブルとは、マイグレーションが実行されたかを管理するためのテーブルです。db:migrateが実行されたあらゆるRailsのデータベースには、このテーブルが存在します。実行コマンドについては、こちらの記事をご参考ください。db:migrateコマンドについて解説しますschema_migrationsテーブルは【version】というカラムのみのテーブルです。入る値は、マイグレーションファイルのバージョン(タイムスタンプ)です。上記の画像の「20210413151302」という値は、マイグレーションファイル名のタイムスタンプに紐づいています。マイグレーションファイル名は、「タイムスタンプ_クラス名.rb」という名前で作成されます。ファイル名の最初のタイムスタンプがschema_migrationsテーブルに保存されます。マイグレーションファイルを新規作成するコマンドについては、こちらの記事をご参考ください。migrationコマンドについて解説しますmigrateディレクトリ配下を確認すると20210413151302_create_users.rb20220413022739_add_column_user.rbというマイグレーションファイルがあります。schema_migrationsテーブルに「20210413151302」という値があるということは、「20210413151302_create_users.rb」は実行しているが「20220413022739_add_column_user.rb」は未実行である、という意味になります。db:migrateを実行したとき、schema_migrationsテーブルを参照します。【version】に格納されている値以降のマイグレーションを順々に実行していきます。実行が成功すると、実行したすべてのマイグレーションファイルのタイムスタンプがschema_migrationsテーブルにどんどん保存されていきます。コメントをキャンセルメールアドレスが公開されることはありません。※サイト次回のコメントで使用するためブラウザーに自分の名前、メールアドレス、サイトを保存する。上に表示された文字を入力してください。Railsプロフィールこのブログを運営しているたいらと言います。プログラム言語を合計5言語経験している12年目エンジニアのブロガーです。このブログでは、どこよりも分かりやすくプログラムやツールのインストール方法などを解説し、エンジニアにの疑問解決に役立つ情報を発信します。お問い合わせなどがありましたら、下記のリンクからお願いします。お問い合わせこちらから記事の検索ができます。IDEAXAMPPお問い合わせホーム検索トップサイドバータイトルとURLをコピーしました。