sql >> Databáze >  >> RDS >> Mysql

Migrace pro změnu výchozí hodnoty pro pole a změnu všech existujících hodnot záznamu na novou výchozí hodnotu pouze v případě, že má starou výchozí hodnotu.

Při migraci byste měli použít metodu change_column ke změně nastavení tabulky takto:

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

A pak k aktualizaci všech existujících záznamů namísto procházení všech záznamů a jejich aktualizace jednotlivě můžete použít metodu update_all takto:

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

První argument říká metodě, jakou hodnotu má nastavit, a druhý říká podmínce, pro které řádky se mají aktualizovat.



  1. PostgreSQL ODLIŠUJE S různou ORDER BY

  2. MySQL:Rychlé rozdělení typů spojení

  3. Vracení JSON nefunguje správně

  4. Vytvořte Computed Column v SQL Server pomocí T-SQL