【问题标题】:Failed executing DbCommand执行 DbCommand 失败
【发布时间】:2021-10-26 11:13:46
【问题描述】:

我在尝试使用 IdentityDbContext 更新数据库后遇到了这个问题

Failed executing DbCommand (8ms)
[Parameters=[], CommandType='Text', CommandTimeout='30']
CREATE TABLE `AspNetUserRoles` (
    `UserId` varchar(767) NOT NULL,
    `RoleId` varchar(767) NOT NULL,
    PRIMARY KEY (`UserId`, `RoleId`),
    CONSTRAINT `FK_AspNetUserRoles_AspNetRoles_RoleId` FOREIGN KEY (`RoleId`) REFERENCES `AspNetRoles` (`Id`) ON DELETE CASCADE,
    CONSTRAINT `FK_AspNetUserRoles_AspNetUsers_UserId` FOREIGN KEY (`UserId`) REFERENCES `AspNetUsers` (`Id`) ON DELETE CASCADE
);

【问题讨论】:

  • 您使用的是哪个 DBMS?
  • MySqlWorkBench.
  • 指定的密钥太长;最大密钥长度是 3072 字节我也有这个问题
  • 嗯 767 + 767 = 1534 所以不清楚为什么会这样。但是 767 对于一个 ID 来说听起来很长,你能不能把它缩短一点?
  • builder.Entity>(entity => entity.Property(m => m.LoginProvider).HasMaxLength(760));我试试这个,但不起作用

标签: c# asp.net .net asp.net-identity mysql-workbench


【解决方案1】:

首先你可以检查数据库中的表。如果有表,你可以改变表

【讨论】:

    猜你喜欢
    • 2019-09-21
    • 2020-05-15
    • 2023-01-24
    • 2023-03-15
    • 1970-01-01
    • 2019-04-17
    • 1970-01-01
    • 2020-03-07
    • 1970-01-01
    相关资源
    最近更新 更多