使用Sql Express Management Studio 2008 GUI(非编程方式),如何使主键自动递增?
让我解释一下:有一个表,其中有一列名为"id",并且此列的项被设置为主键。我想使此列自动递增,但怎么做呢?
干杯
使用Sql Express Management Studio 2008 GUI(非编程方式),如何使主键自动递增?
让我解释一下:有一个表,其中有一列名为"id",并且此列的项被设置为主键。我想使此列自动递增,但怎么做呢?
干杯
虽然以下不是在GUI中执行的方法,但您可以使用IDENTITY数据类型(起始值、增量)获得自动递增:
CREATE TABLE "dbo"."TableName"
(
id int IDENTITY(1,1) PRIMARY KEY NOT NULL,
name varchar(20),
);
插入语句应列出除 ID 列之外的所有列(它将填充为自动增量值):
INSERT INTO "dbo"."TableName" (name) VALUES ('alpha');
INSERT INTO "dbo"."TableName" (name) VALUES ('beta');
以及结果
SELECT id, name FROM "dbo"."TableName";
将会是
id name
--------------------------
1 alpha
2 beta
在SSMS中右键单击表格,选择“设计”,然后点击id列。在属性中,将标识设置为种子值 @ 比如 1,并且增量为 1 - 保存即可。
is identity
设置为 'yes'。 - Will A如果按照以下答案更改后仍无法保存,那么请按照以下步骤操作:
工具 -> 选项 -> 设计人员 -> 表格和数据库设计师 -> 取消选中“防止保存需要重建表的更改”框 -> 确定
现在可以尝试保存,应该可以正常工作。
这台机器上没有Express Management Studio,所以只能靠记忆来操作。我认为你需要将该列设置为"IDENTITY",在属性下应该有一个[+]可展开,然后将自动增量设置为true。
我认为可以在定义阶段像这样做
创建员工表( id int 自增, name varchar(50), primary key(id) ).. 我正在尝试查看是否有一种方法可以更改现有表并将列设置为自增,但从理论上来看似乎不可能(因为现有值可能需要修改)