Mysql
 sql >> база данни >  >> RDS >> Mysql

Посоченият ключ беше твърде дълъг; максималната дължина на ключа е 767 байта - ASPNet Identity MySQL

Сам намерих отговора.

Проблемът беше свързан с потребителското име и имейл в таблицата с потребители. И след това Името в таблицата с ролите.

Добавих максимална дължина и за трите в моя клас IdentityModel. Ето го:

    [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);
        }
    }
}

О, и добавяне на DbConfigurationType да бъде MySQL решава проблема с таблицата с историята на миграцията (вече знаех това).

Нещастник музефан




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. mysql_install_db, грешка:35, на Mac OS X 10.9.1

  2. Промяна на реда на записите от предния край

  3. Как да разширя EER диаграма в MySQL Workbench?

  4. Манипулиране на utf8mb4 данни от MySQL с PHP

  5. SQL заявка, където полето НЕ съдържа $x