[RUBY] [Rails] Schritte zum Beheben von Fehlern, die beim Löschen meiner SQL-Tabellen und Migrationsdateien auftreten

[Prämisse] Rails 6.0.3.1 ruby 2.6.3

Derzeit wird eine Original-App erstellt. Zu dieser Zeit habe ich es versehentlich gemacht. Ich habe den Fehlerinhalt zusammengefasst, der beim Löschen der Tabelle users_artists und der Migrationsdatei aufgetreten ist.

Terminal.


% rails db:rollback STEP=5

Terminal.


% rails db:migrate:status

・ Als ich den Status mit dem obigen Befehl überprüfte, fand ich zur Bestätigung nur an einer Stelle ein Problem.

Terminal.


 Status   Migration ID    Migration Name
--------------------------------------------------
   up     000             ********** NO FILE **********
  down    20201014111144  Devise create users
  down    20201014111251  Devise create artists
  down    20201014121517  Create events
  down    20201020102544  Create bookmarks

↑ Der Status ist nur an einer Stelle aktiv und der Dateiname bleibt aus irgendeinem Grund NO DATEI. Image from Gyazo ↑ Das Obige ist der Inhalt der zu diesem Zeitpunkt verbliebenen Schemadatei -Die Versionsanzeige verschwand und blieb ohne zu sinken. Ursprünglich sollte dieser Dateiname eine Migrations-ID haben Ist "000" hier

[Fehlerbehebungsverfahren] (1) Erstellen Sie eine Migrationsdatei unter db / migrate mit dem neuen Namen "000_create_users_artists.rb", um den Status zu verringern. : point_right: Damit es mit dem Namen anderer Migrationsdateien identisch ist, wurde ** create ** am Anfang des Namens hinzugefügt und wie folgt beschrieben.

000_create_users_artists.rb


class CreateUsersArtists < ActiveRecord::Migration[6.0]
  def change
    create_table :users_artists do |t|
      t.integer :user_id
      t.integer :artist_id

      t.timestamps
    end
  end
end

② Führen Sie `` `Rails db: migrate: status``` erneut aus. Wie unten gezeigt, wurde bestätigt, dass der Migrationsname des Up-Teils auf dem Terminal in "Benutzer-Künstler erstellen" geändert wurde.

Terminal.


Status   Migration ID    Migration Name
--------------------------------------------------
   up     000             Create users artists
  down    20201014111144  Devise create users
  down    20201014111251  Devise create artists
  down    20201014121517  Create events
  down    20201020102544  Create bookmarks

③ Geben Sie den Dateinamen erneut mit dem folgenden Befehl an, um den Status herunterzufahren und auszuführen.

Terminal.


% rails db:migrate:down VERSION=000_create_users_artists.rb

④ Überprüfen Sie erneut, ob der Status der angegebenen Datei nicht verfügbar ist, und löschen Sie die unnötige Datei `` `000_create_users_artists.rb``` OK! !!

Terminal.


 Status   Migration ID    Migration Name
--------------------------------------------------
  down    000             Create users artists
  down    20201014111144  Devise create users
  down    20201014111251  Devise create artists
  down    20201014121517  Create events
  down    20201020102544  Create bookmarks

⑤ Führen Sie abschließend `` `Rails db: migrate``` aus, um die Tabelle neu zu erstellen und zu beenden.

Recommended Posts

[Rails] Schritte zum Beheben von Fehlern, die beim Löschen meiner SQL-Tabellen und Migrationsdateien auftreten
Migrationsdatei zum Hinzufügen eines Kommentars zur Rails-Tabelle
Rails "So löschen Sie NO FILE-Migrationsdateien"