Mysql
 sql >> Baza danych >  >> RDS >> Mysql

Podany klucz był za długi; maksymalna długość klucza to 767 bajtów — ASPNet Identity MySQL

Sam znalazłem odpowiedź.

Problem dotyczył nazwy użytkownika i adresu e-mail w tabeli Użytkownik. A potem Imię w tabeli Role.

Dodałem maksymalną długość dla wszystkich trzech w mojej klasie IdentityModel. Oto on:

    [DbConfigurationType(typeof(MySql.Data.Entity.MySqlEFConfiguration))]
    public class ApplicationDbContext : IdentityDbContext<ApplicationUser>
    {
        public ApplicationDbContext()
            : base("CaptureDBContext", throwIfV1Schema: false)
        {
        }

        public static ApplicationDbContext Create()
        {
            return new ApplicationDbContext();
        }
        protected override void OnModelCreating(DbModelBuilder modelBuilder)
        {
            base.OnModelCreating(modelBuilder);
            modelBuilder.Entity<ApplicationUser>().Property(u => u.UserName).HasMaxLength(255);
            modelBuilder.Entity<ApplicationUser>().Property(u => u.Email).HasMaxLength(255);
            modelBuilder.Entity<IdentityRole>().Property(r => r.Name).HasMaxLength(255);
        }
    }
}

Aha, i dodanie DbConfigurationType być MySQL rozwiązuje problem z tabelą historii migracji (już to wiedziałem).

Pechowy muzefan




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Wiele obiektów SQL w PHP/MySQLi

  2. Funkcja MySQL LOG2() – Zwróć logarytm Base-2 wartości

  3. Jak uzyskać dostęp do MySQL z wielu wątków jednocześnie?

  4. Jak używać symboli wieloznacznych z przedrostkiem, takich jak „*abc” z dopasowaniem przeciw

  5. Równoległe zapytania mysql w php?