Je voulais modifier la base de données tout en apprenant le développement d'équipe dans une école de programmation. Je n'ai pas appris les détails, alors je vais le résumer pour mémoire.
J'espère que cela sera utile pour ceux qui ne sont pas familiarisés avec les opérations de bases de données et ceux qui en apprennent davantage sur les bases de données à l'avenir.
DB: MySQL Rails: 5.2.4.3
Terminal
% rails db:migrate:status
Ensuite, je pense que les tables sortiront comme ça (le nombre et les noms des tables qui sortiront seront différents)
Terminal
Status Migration ID Migration Name
--------------------------------------------------
up 20200823051138 Devise create ----s
up 20200824122031 Create -------s
up 20200824122659 Add ancestry to ------s
up 20200824123715 Create -----s
up 20200829083145 Create -----s
up 20200906141656 Create -----s Je souhaite modifier ce tableau cette fois
up 20200907114227 Create -----s
down 20200927061950 Create -----s
down 20200927065357 Create -----s
※----Est le nom de la table que vous avez créé
Faites attention ici.
Pour corriger la migration, l'état doit être down.
Pour le faire tomber, exécutez une commande comme celle-ci dans votre terminal
Terminal
% rails db:rollback
Vérifions à nouveau le statut
Terminal
% rails db:migrate:status
Terminal
Status Migration ID Migration Name
--------------------------------------------------
up 20200823051138 Devise create ----s
up 20200824122031 Create -------s
up 20200824122659 Add ancestry to ------s
up 20200824123715 Create -----s
up 20200829083145 Create -----s
up 20200906141656 Create -----s Je souhaite modifier ce tableau cette fois
down 20200907114227 Create -----s
down 20200927061950 Create -----s
down 20200927065357 Create -----s
※----Est le nom de la table que vous avez créé
cette?
Un seul bas est devenu bas.
En effet, la commande de restauration ne peut être désactivée qu’une par une.
Alors essayons à nouveau.
Terminal
% rails db:rollback
Vérifions à nouveau le statut
Terminal
% rails db:migrate:status
Terminal
Status Migration ID Migration Name
--------------------------------------------------
up 20200823051138 Devise create ----s
up 20200824122031 Create -------s
up 20200824122659 Add ancestry to ------s
up 20200824123715 Create -----s
up 20200829083145 Create -----s
down 20200906141656 Create -----s Je souhaite modifier ce tableau cette fois
down 20200907114227 Create -----s
down 20200927061950 Create -----s
down 20200927065357 Create -----s
※----Est le nom de la table que vous avez créé
Cette fois, j'ai pu abattre la table cible en toute sécurité.
Cette fois, je voulais corriger le nom de la colonne, j'ai donc changé le nom de la colonne dans le fichier de migration après cela.
finalement
Terminal
% rails db:migrate
Vérifions à nouveau le statut
Terminal
% rails db:migrate:status
Terminal
Status Migration ID Migration Name
--------------------------------------------------
up 20200823051138 Devise create ----s
up 20200824122031 Create -------s
up 20200824122659 Add ancestry to ------s
up 20200824123715 Create -----s
up 20200829083145 Create -----s
up 20200906141656 Create -----s Table modifiée
up 20200907114227 Create -----s
up 20200927061950 Create -----s
up 20200927065357 Create -----s
※----Est le nom de la table que vous avez créé
Pour la commande rails db: migrate, remplacez toutes les tables down par up.
db: migrer est tout à la fois Vous ne pouvez descendre que db: rollback un par un.
Je vais également présenter une méthode qui peut être effectuée collectivement lorsque vous devez revenir plusieurs fois en arrière comme cette fois
Terminal
% rails db:rollback STEP=2
Une fois que vous vous êtes habitué à la commande rollback, utilisez l'option STEP de manière positive pour améliorer votre maniabilité.
Recommended Posts