3 — 移行を生成
文はテーブルごとにグループ化されます。実行前に出力を見直してください。
まだ差分は生成されていません。
範囲:これはテーブル・列・主キー・null 許容性・既定値・外部キーの構造差分です。インデックス、トリガー、ビュー、データの後埋めは範囲外で、手で追加すべきです。SQLite は列をその場で変更できないため、その変更はテーブルの再作成を求めるコメントとして出力されます。
データベース移行とは?
移行とは、データベーススキーマを変える版管理されたスクリプトです。このテーブルを作り、あの列を足し、インデックスを落とす。チームは移行を順番に適用するので、すべての環境 — 開発、ステージング、本番 — が、手作業でコードと一致しない形に編集される代わりに、版から版へ同じ道を辿ります。各移行は通常 2 つの半分で出荷されます。up が変更を適用し、down がそれを逆にする。だから悪いリリースは、入ったのと同じ道で巻き戻せます。
テーブルや列を落とす移行は破壊的です — down スクリプトは削除されたデータを蘇らせられません。何かを取り除く移行を実行する前に、バックアップ(または少なくとも影響するテーブルの書き出し)を取ってください。