Ich wollte die Datenbank ändern, während ich an einer Programmierschule die Teamentwicklung lernte. Ich habe die Details nicht gelernt, daher werde ich sie für ein Memorandum zusammenfassen.
Ich hoffe, es ist hilfreich für diejenigen, die mit Datenbankoperationen nicht vertraut sind und in Zukunft etwas über Datenbanken lernen.
DB: MySQL Rails: 5.2.4.3
Terminal
% rails db:migrate:status
Dann denke ich, dass die Tabellen so herauskommen werden (die Anzahl und Namen der herauskommenden Tabellen werden unterschiedlich sein)
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 Ich möchte diese Tabelle dieses Mal ändern
up 20200907114227 Create -----s
down 20200927061950 Create -----s
down 20200927065357 Create -----s
※----Ist der von Ihnen erstellte Tabellenname
Achten Sie hier auf und ab.
Um die Migration zu beheben, muss der Status inaktiv sein.
Führen Sie einen solchen Befehl in Ihrem Terminal aus, um ihn herunterzufahren
Terminal
% rails db:rollback
Lassen Sie uns den Status noch einmal überprüfen
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 Ich möchte diese Tabelle dieses Mal ändern
down 20200907114227 Create -----s
down 20200927061950 Create -----s
down 20200927065357 Create -----s
※----Ist der von Ihnen erstellte Tabellenname
Das?
Nur eine Daune hat sich in Daune geändert.
Weil der Rollback-Befehl nur einzeln abgelehnt werden kann.
Also versuchen wir es noch einmal.
Terminal
% rails db:rollback
Lassen Sie uns den Status noch einmal überprüfen
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 Ich möchte diese Tabelle dieses Mal ändern
down 20200907114227 Create -----s
down 20200927061950 Create -----s
down 20200927065357 Create -----s
※----Ist der von Ihnen erstellte Tabellenname
Dieses Mal konnte ich den Zieltisch sicher herunterbringen.
Dieses Mal wollte ich den Spaltennamen korrigieren, also habe ich den Spaltennamen in der Migrationsdatei danach geändert.
Schließlich
Terminal
% rails db:migrate
Lassen Sie uns den Status noch einmal überprüfen
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 Geänderte Tabelle
up 20200907114227 Create -----s
up 20200927061950 Create -----s
up 20200927065357 Create -----s
※----Ist der von Ihnen erstellte Tabellenname
Ändern Sie für den Befehl Rails db: migrate alle Down-Tabellen in Up.
db: migrieren ist alles auf einmal Sie können db: rollback nur einzeln herunterfahren.
Ich werde auch eine Methode vorstellen, die gemeinsam durchgeführt werden kann, wenn Sie wie dieses Mal mehrmals zurücksetzen müssen
Terminal
% rails db:rollback STEP=2
Wenn Sie sich an den Rollback-Befehl gewöhnt haben, verwenden Sie die STEP-Option positiv, um Ihre Bearbeitbarkeit zu verbessern.
Recommended Posts