在sql里能建标识列IDENTITY(1,1)不,如果可以要怎么建啊

如题所述

Sql server 数据库才可以

例如:

CREATE TABLE test_create_tab2 (
id INT IDENTITY(1, 1) PRIMARY KEY,
val VARCHAR(10)
);追问

是sql server ,现在是建好了 但是主键建不了了,能不能用代码删除这个标识列,都没名字

追答

主键建不了? 报什么错误呀?

难道是像下面这种情况的错误?

无法在表 'test_tab' 中可为空的列上定义 PRIMARY KEY 约束。

先给那一列加个 NOT NULL 约束, 再加主键。

1> ALTER TABLE test_tab
2> ALTER COLUMN id INT NOT NULL;
3> go

1> ALTER TABLE test_tab
2> ADD CONSTRAINT pk_test_tab PRIMARY KEY(id);
3> go

追问

追答

你这个错误信息. 是重复创建 id 列了
要先删除, 后创建
或者 仅仅 修改 id 列, 而不是再创建一个 id 列

-- 这个是创建 id 列
ALTER TABLE test_tab
ADD id INT ......

-- 这个是 修改 id 列
ALTER TABLE test_tab
ALTER COLUMN id INT NOT NULL;

一个表, 不能有2个 id 列啊

温馨提示:答案为网友推荐,仅供参考
第1个回答  2020-04-03
2005里倒是有一个row_number()函数可以实现,不是2005只能建一个带自动编号的临时表,插入现有数据再查询出来

相关了解……

你可能感兴趣的内容

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