先谢谢 大家了。。
需求
需求:修改表的属性
把某个列设置为主键 和自增长。
ALTER TABLE news ALTER COLUMN id INT Identity(1,1) not null
直接到表定义图中设置标识不行吗??
由于你的表已经建好,所以无法将一个现有的列设置为自增长字段。
请参考下面例子,这个例子通过下面办法变通实现。先增加一个自增长列,然后删除需要修改的那个列,最后在讲新增的列改名。
--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
楼上的方法不错。
也可以用临时表