sql2000表内每生成一条数据后ID都是2 怎么修改为从1自动增长

sql2000表内每生成一条数据后ID都是2 怎么修改为从1自动增长

第1个回答  2019-07-23

    打开SQL Server,连接数据库,找到目标表,右键,然后点击“设计”。

    单击列(或其他需要设置的为int的列),然后在下方“列属性”中找到“标识规范”,展开。

    在(是标识)下拉栏中选择“是”,然后设置“标识增量”(递增量)和”标识种子“(初始数)

    这样设置之后,再保存目标表即可

参考以及图片:

追问

改完后 再新增数据 就新增不进去了 不知怎么回事?

追答

是否有报错截图呢
目前可以从以下两个方面查看原因:
第一,检查修改后的ID列的数据是不是递增的
第二,你的插入语句,可以省略ID列,让系统自动递增
如果没有解决,提供下报错截图吧

第2个回答  2019-07-23
列名是ID,应该是主键了,但是为什么你没设置成主键呢?居然还有重复的ID值。
如果这个表A,没有多少数据,建议你重新创建一个临时表B,表结构与这个表一致,把数据都复制到B表中,然后删除表A中的数据,然后
alter table A drop column ID
alter table A add ID int identity(1,1)
然后将B表中的数据重新插入到A表。

或者另外一种方法,在往A表中插入数据时,ID列的插入值,调用一个函数

insert into A (ID,XX,XX,XX) values (select (max(id)+1) from A,xx,xx,xx)

这样每次都从现有数据中,获取最大值然后加1,两种方式各有利弊,自己权衡吧。本回答被网友采纳
第3个回答  2019-07-23
identity(1,1) parmary key not null 将这个字段值设置成这样就可以了。不要个给默认值。

相关了解……

你可能感兴趣的内容

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 非常风气网