首页 新闻 会员 周边

sql 设置主键并且自增长

0
悬赏园豆:10 [已关闭问题]

先谢谢 大家了。。

需求

需求:修改表的属性   

  把某个列设置为主键 和自增长。

问题补充: ALTER TABLE EDA_Attachment ALTER COLUMN Att_ID INT Identity(1,1) not null 消息 156,级别 15,状态 1,第 2 行 关键字 'Identity' 附近有语法错误。
汉城的主页 汉城 | 初学一级 | 园豆:2
提问于:2009-05-11 16:13
< >
分享
其他回答(3)
0


ALTER TABLE news ALTER COLUMN id  INT Identity(1,1) not null

革命军马前卒 | 园豆:255 (菜鸟二级) | 2009-05-11 16:49
0

直接到表定义图中设置标识不行吗??

Jaryleely | 园豆:367 (菜鸟二级) | 2009-05-11 23:17
0

由于你的表已经建好,所以无法将一个现有的列设置为自增长字段。

请参考下面例子,这个例子通过下面办法变通实现。先增加一个自增长列,然后删除需要修改的那个列,最后在讲新增的列改名。

 

Code Snippet

--create test table

create table table1 (col1 int, col2 varchar(30))

insert into table1 values (100, 'olddata')

 

 --add identity column

alter table table1 add col3 int identity(1,1)

GO

 

--rename or remove old column

exec sp_rename 'table1.col1', 'oldcol1', 'column'

OR

alter table table1 drop column col1

--rename new column to old column name

exec sp_rename 'table1.col3', 'col1', 'column'

GO

 

--add new test record and review table

insert into table1 values ( 'newdata')

select * from table1


eaglet | 园豆:17139 (专家六级) | 2009-05-12 07:36
0

楼上的方法不错。

也可以用临时表

winzheng | 园豆:8797 (大侠五级) | 2009-05-12 12:04
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册