未知列';需要验证';在';字段列表';MySQL
我有一个采用代码优先方法的.Net核心项目 这是我的迁移,我用枚举填充表未知列';需要验证';在';字段列表';MySQL,sql,asp.net,asp.net-core,Sql,Asp.net,Asp.net Core,我有一个采用代码优先方法的.Net核心项目 这是我的迁移,我用枚举填充表 protected override void Up(MigrationBuilder migrationBuilder) { migrationBuilder.Sql( $"INSERT INTO ValidationStatuses(Id,Name) VALUES({(int) ValidationStatusEnum.ValidationRequired},{
protected override void Up(MigrationBuilder migrationBuilder)
{
migrationBuilder.Sql(
$"INSERT INTO ValidationStatuses(Id,Name) VALUES({(int) ValidationStatusEnum.ValidationRequired},{ValidationStatusEnum.ValidationRequired})");
migrationBuilder.Sql(
$"INSERT INTO ValidationStatuses(Id,Name) VALUES({(int) ValidationStatusEnum.Validated},{ValidationStatusEnum.Validated})");
migrationBuilder.Sql(
$"INSERT INTO TenantTypes(Id,Name) VALUES({(int) TenantTypeEnum.Agency},{TenantTypeEnum.Agency}");
}
protected override void Down(MigrationBuilder migrationBuilder)
{
migrationBuilder.Sql(
"DELETE FROM ValidationStatuses");
migrationBuilder.Sql(
"DELETE FROM TenantTypes ");
}
当我试着运行它时,我有这个
“字段列表”中的未知列“ValidationRequired”
我如何解决这个问题?您缺少了告诉MySQL这是字符串值而不是cloumn的引号
$"INSERT INTO ValidationStatuses(Id,Name) VALUES('{(int) ValidationStatusEnum.ValidationRequired}','{ValidationStatusEnum.ValidationRequired})'");
您可能需要将我在MySQL中添加的单引号替换为双引号