sql >> Databasteknik >  >> RDS >> Mysql

Migrering för att ändra standardvärdet för ett fält och ändra alla befintliga posts värde till nytt standardvärde endast om det har ett gammalt standardvärde.

I migreringen bör du använda metoden change_column för att ändra tabellinställningarna så här:

change_column :my_models, :attribute_name, :integer, :default => 3

Och sedan för att uppdatera alla befintliga poster, istället för att gå igenom alla poster och uppdatera dem individuellt, kan du använda metoden update_all så här:

MyModel.update_all({ :attribute_name => 3 }, { :attribute_name => 0 })

Det första argumentet talar om för metoden vilket värde som ska ställas in och det andra talar om villkoret för vilka rader som ska uppdateras.



  1. Så här kontrollerar du om en tabell redan finns innan du skapar den i MySQL

  2. Hur man maskerar tabeller och bevarar referensintegritet

  3. Hur man använder AI för SQL Tuning för en riktig automatiserad process

  4. Importerar zippad CSV-fil till PostgreSQL