今天遇到一错误困了我一天,如此痛恨,遂记录于此:
nhibernate框架+MVC模式搭的项目,添加数据时报错:
"could not insert: [KXRMallManage.Models.GenericProduct][SQL: INSERT INTO GenericProduct (GpName, Gname, Consultingtime, add_user) VALUES (?, ?, ?, ?); select SCOPE_IDENTITY()]"}
最后还是百度到一个解决办法,就试了下结果就没问题了,具体如下:
违反PRIMARY KEY约束、不能在对象中插入重复键
异常:违反了 PRIMARY KEY 约束 'PK_User。不能在对象 User中插入重复键。 语句已终止。
问题:User表主键列是自动增长,按道理不可能出现这个问题
解决方案:在查了所有可能出现问题的类和配置文件后,无果!baidu之。。。。。。。
正解:自动增加功能取消,重新设置该功能,ok。
这个某个网友的解答,不知道是不是这个原因:
“估计你通过某个操作把自增列的种子给改小了。 所以insert的时候报重复性错误。 取消自增长,再加上自增长,种子恢复正常。”