如何自动增加SQL Server数据库表中的主键?我已经通过论坛看了一下,但不知道如何做到这一点。
我看了房子的属性,但找不到选项。我看到了一个答案,你去到身份规范属性,并将其设置为“是”,并将身份增量设置为1,但该部分是灰色的,我不能将“否”更改为“是”。
一定有一个简单的方法来做到这一点,但我找不到。
如何自动增加SQL Server数据库表中的主键?我已经通过论坛看了一下,但不知道如何做到这一点。
我看了房子的属性,但找不到选项。我看到了一个答案,你去到身份规范属性,并将其设置为“是”,并将身份增量设置为1,但该部分是灰色的,我不能将“否”更改为“是”。
一定有一个简单的方法来做到这一点,但我找不到。
当前回答
在创建表时,可以使用关键字IDENTITY和PRIMARY KEY约束作为列的数据类型。 例:
StudentNumber IDENTITY(1,1) PRIMARY KEY
这里的第一个‘1’表示起始值,第二个‘1’表示递增值。
其他回答
展开你的数据库,展开你的表右键单击你的表,从下拉菜单中选择设计。
现在点击下面的列属性,向下滚动,找到标识规范,展开它,你会发现标识为Yes。现在选择它正下方的单位增量,给出你想要增加的值。
如果已经填充了表,则无法将列更改为IDENTITY列或将其转换为非IDENTITY列。您将需要导出所有数据,然后您可以将列类型更改为IDENTITY,反之亦然,然后将数据导入回来。 我知道这是一个痛苦的过程,但我相信除了使用这篇文章中提到的序列之外没有其他选择。
注意ID元素是否相邻。由于SQLSERVER ID可以跳跃1000。
例如:重启前ID=11 重新启动后,在表中插入新行,那么id将是1012。
当你使用Data Type: int时,你可以选择你想要自动递增的行,然后转到列属性标签。在这里,您可以将身份设置为“yes”。自动递增的起始值也可以在那里编辑。希望我能帮上忙;)
您必须展开Identity部分以公开增量和种子。
编辑:我假设您的数据类型是整数,而不是char(10)。当我发布这个答案时,我想说哪个是合理的和有效的