Mysql
 sql >> Base de données >  >> RDS >> Mysql

Problème de CLÉ PRIMAIRE avec la création de tables dans Rails à l'aide de la commande rake db:migrate avec mysql

J'ai moi aussi récemment rencontré le même problème.

MySQL 5.7 ne prend plus en charge les valeurs nulles par défaut pour la clé primaire.

En remplaçant la valeur par défaut native pour les clés primaires dans MySql, vous pouvez résoudre votre problème.

Dans config/initializers/abstract_mysql_adapter.rb :

class ActiveRecord::ConnectionAdapters::MysqlAdapter
  NATIVE_DATABASE_TYPES[:primary_key] = "int(11) auto_increment PRIMARY KEY"
end

Pour mysql2, cela devrait être config/initializers/abstract_mysql2_adapter.rb :

class ActiveRecord::ConnectionAdapters::Mysql2Adapter
  NATIVE_DATABASE_TYPES[:primary_key] = "int(11) auto_increment PRIMARY KEY"
end