先上模型

Comment

public class Comment
{
[Key]
public int CommentId { get; set; }
[Required]
public int Star { get; set; }
[Required]
public string Content { get; set; }
[Required]
[MaxLength()]
public string ProductName { get; set; } [Required]
[ForeignKey("User")]
public int UserId { get; set; }//需要增加的外键
public virtual User User { get; set; } }

User

    public class User
{
[Key]
public int UserId { get; set; } [Required(ErrorMessage = "该项为必填项")]
[MaxLength(, ErrorMessage = "请输入少于30个字符")]
public string userName { get; set; } public virtual ICollection<Comment> Comment { get; set; }
}

在程序包控制管理台执行

Add-Migration InitDB -Force
Update-Database -Verbose

出现错误 ALTER TABLE 语句与  FOREIGN KEY 约束"FK_dbo.Comments_dbo.Users_UserId"冲突。该冲突发生于数据库"ProComment",表"dbo.Users", column 'UserId'。

搜索之,未果。根据搜索的线索不断排查

终于,在将Users 和 Comments两个表的数据都删除之后,然后再执行,成功。

使用code first 模式,在不熟悉注解的情况下,真的是每一步都是坑

填坑的过程很痛苦,但是填完之后就很舒服

解决code first Migration 增加外键时出现错误的问题的更多相关文章

  1. mysql 创建外键时发生错误的原因和解决方法

    可以去网上查看错误号,就能知道到底哪里出错了 https://zhidao.baidu.com/question/359868536.html 这里1452对应的错误是因为建立外键的表中还有数据,所以 ...

  2. Code First 中使用 ForeignKey指定外键时总是显示未引用

    Code First 中使用 ForeignKey指定外键时总是显示未引用 原因是:开发环境是在.NET 4.0 修改项目,改为.net 4.5

  3. MySQL里创建外键时错误的解决

    --MySQL里创建外键时错误的解决 --------------------------------2014/04/30 在MySQL里创建外键时(Alter table xxx add const ...

  4. Django2.0之后使用外键时遇到 __init__() missing 1 required positional argument: 'on_delete'

    1.Django2.0之后使用外键时遇到 __init__() missing 1 required positional argument: 'on_delete' 需要在外键创建时给on_dele ...

  5. contentType 应用,(表中数据大量存在外键时使用)

    当表中有大量的foreignkey 外键时,而且后期还有可能加入一些外键时, 使用django自带的contenttype表(表结构是app名和表的对应的每个类字段) 1. Django 中的 con ...

  6. mysql之创建外键报150错误的处理方法

    这几天由于在赶项目进度,也就没有及时记录下自己的学习情况 ,在完成项目的这段时间里,碰到了很多问题,在解决问题的过程中学习了不少技巧. 这里就主要介绍一下在mysql数据库中为表之间建立外键时报100 ...

  7. EntityFramework Model有外键时,Json提示循环引用 解决方法

    正文之前先说两句,距离上篇博客已将近两个月,这方面的学习和探索并没有停止,而是前进道路上遇上了各种各样的问题,需要不断的整理.反思和优化,这段时间的成果,将在最近陆续整理发出来. 个人感觉国内心态太浮 ...

  8. 解决修改表结构,添加外键时出现“约束冲突”的错误

    由于表结构更改,使用新建表,现有部分表需要更改外键,将引用更改到新建表的相应字段.在更改过程中,部分表出现如下错误提示: ALTER TABLE 语句与 COLUMN FOREIGN KEY 约束 ' ...

  9. [转载] Can't create table './store/#sql-b2c_1a.frm' (errno: 150)和sql execution error #1452添加外键时错误解决方法

    Can't create table './store/#sql-b2c_1a.frm' (errno: 150)解决方法 错误原因有四: 1.外键的引用类型不一样,主键是int外键是char 2.找 ...

随机推荐

  1. 华为要卖5G技术,虽然我和华为没有一点关系,但是我也很呵呵

    http://www.sohu.com/a/340555529_166680 老任头,竟然说出了这样的话,要卖5G技术给西方,然后塑造对手. 按照老任头的脾气,老任头应该不至于胡说八道这样的话,但是呢 ...

  2. db2 连接数据库与断开数据库

    连接数据库: connect to db_name user db_user using db_pass 断开连接: connect  resetdisconnect current quit是退出交 ...

  3. PHP语言基础练习20191024

    <style>*{font-size: 30px;}</style> //传地址  &<?phpfunction sum($a,&$b){ $c=$a+$ ...

  4. (playbook)ubuntu下ansible安装docker

    --- - hosts: test sudo: yes vars: apt_packages_ca: - apt-transport-https - ca-certificates tasks: - ...

  5. error: Error trying to parse settings: Unexpected trailing characters in Packages\User\Preferences.sublime-settings:9:2 reloading settings Packages/User/Preferences.sublime-settings

    error: Error trying to parse settings: Unexpected trailing characters in Packages\User\Preferences.s ...

  6. MongoDB服务的安装与删除

    服务的安装: 在MongoDB的目录下创建两个文件夹 data和logs, 在通过cmd进入bin目录下,执行命令: mongod --dbpath "C:\Program Files\Mo ...

  7. malloc,free实验

    #include <stdio.h> #include <stdlib.h> int main() { char a = 0; //int * p = (int * ) mal ...

  8. docker 运行jenkins及vue项目与springboot项目(一.安装docker)

    docker 运行jenkins及vue项目与springboot项目: 一.安装docker 二.docker运行jenkins为自动打包运行做准备 三.jenkins的使用及自动打包vue项目 四 ...

  9. SQL Server 2014 安装说明

    SQL Server 2014 安装说明 本节内容将说明如何通过安装向导在 Windows Server 2012 R2 上安装 SQL Server 2014. 先从 MSDN 网站上下载安装了 S ...

  10. SPI驱动程序设计

    一.SPI驱动子系统架构 m25p80.c: static int __devinit m25p_probe(struct spi_device *spi) { struct flash_platfo ...