Diverses opérations de migration de rails

Que faire dans cet article

--Comment ajouter / supprimer des contraintes sur des colonnes avec des contraintes NOT NULL

Ajouter / supprimer la contrainte NOT NULL

Lorsque vous souhaitez ajouter une contrainte NOT NULL

def up
  change_column_null :posts, :content, false
end

def down
  change_column_null :posts, :content, true
end

Le but est d'utiliser la méthode haut / bas au lieu de la méthode de changement.

Lorsque vous souhaitez supprimer la contrainte NOT NULL

def up
  change_column_null :posts, :content, true
end

def down
  change_column_null :posts, :content, false
end

Supprimer l'index de la colonne avec l'index de clé composite

def change
  remove_index :likes, column: [:user_id, :post_id], unique: true
end

Lors de la suppression de l'index d'une seule colonne, procédez comme suit

def change
  remove_index :likes, column: :micropost_id, unique: true
end

Comment supprimer une colonne avec une clé externe créée avec le type de référence

def change
  remove_reference :posts, :user, null: false, foreign_key: true
end

Foreign_key: Si vous avez défini une clé externe avec true, vous devez également l'ajouter.

prime

Vérifier si une colonne a un index (dans MySQL)

mysql > SHOW CREATE TABLE tbl_name

référence

https://dev.mysql.com/doc/refman/5.6/ja/show-create-table.html

https://railsguides.jp/active_record_migrations.html

https://qiita.com/akinov/items/852fe789fe98a44350a9

Recommended Posts

Diverses opérations de migration de rails
Maîtriser diverses opérations de migration
Migration des rails
[Rails] À propos des fichiers de migration
[Rails] Résumé de la commande de migration
Comprendre la migration dans les rails
Diverses opérations sur les chaînes Ruby
[rails] Fichier de migration NOFILE supprimé
Annuler la migration de Ruby on Rails
console de rails Opérations fréquemment utilisées
[Rails] Supprimer le fichier de migration
[Rails] Différentes façons de supprimer des données
Vérifier l'état de migration des rails
Fichier de migration pour ajouter un commentaire à la table Rails
Migration des rails Changements de colonne et ainsi de suite.