雪花

"不能将值 NULL 插入列 'ID',表 列不允许有 Null 值."

问题:

"不能将值 NULL 插入列 'ID',表 列不允许有 Null 值."

原因:

 在进行表创建的时候没有将主键自增字段添加标识.

 在使用navicat进行表创建的时候一定要注意这个主键自增标识,如下图所示:

 

 

 

在这里楼主的navicat版本是12,但对于其他版本也是同样的道理

解决:

因为navicat在创建表后不能再图形化界面进行修改标识,所以楼主采用的一种非常暴力的方法就是重新建表和添加标识

SQLServer不能通过Navicat等界面工具修改主键的自动增长,修改操作只能通过sql命令来实现。
自增列不能直接修改,必须将原有ID列删除,然后重新添加一列具有identity属性的ID字段。比如你要修改的字段名为ID:
alter table 表名 drop column ID
alter table 表名 add ID int identity(1,1)
注:这只适用于刚建完表的情况,如果此时主键已经使用过了,表中存在许多数据,不能使用该方法删除主键,会导致数据丢失。(可行的方法,建一张相同的表来存储数据,在修改,插入)。

posted @ 2019-09-05 14:26  十色  阅读(8718)  评论(0编辑  收藏  举报