关于重建ID自增加字段问题,有人说解决不了:(,在线等!急

zhl7522 2004-08-06 03:01:07
问题是这样的:
1、我有一个表tb_user,字段为user_id,user_name,user_datetime
我现在有个需求要把user_id自增长字段删除重建,当然表中是有数据的,数据不能更改!
2、现在如果我没做任何操作之前可以删除再重建suer_id字段,字段顺序没问题,可当然再添加一个新的记录时,这个新的记录的物理位置和逻辑位置不一样,也就是如果ID是150,那实际上用select * from tb_user的显示的时候可能在第20条,这样我如果再执行ALTER TABLE tb_user ADD user_id INT IDENTITY的时候这个新加记录的ID可能是20,请问各位大侠,这种情况我应该怎么办?才能不改变这个记录的ID,让它的物理位置和逻辑位置相同,如果同时添加多条的话更是这样!急!!!
...全文
240 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
chinaandys 2004-08-08
  • 打赏
  • 举报
回复
对于主键,外键为了便于维护最好是起一个约束名如:

alter table tablename add constraint 约束名 primary key(列名)
zhl7522 2004-08-06
  • 打赏
  • 举报
回复
我用这个不好用啊!ALTER TABLE table2 NOCHECK CONSTRAINT ID
zhl7522 2004-08-06
  • 打赏
  • 举报
回复
请问怎么能把ID的主键去掉啊?
47522341 2004-08-06
  • 打赏
  • 举报
回复
create table table1(
fid int constraint key1 primary key,
fname nvarchar(20)
)
go

alter table Table1
drop key1
go
alter table table1
drop column fid
go

select * from table1
go

drop table table1
go
zhl7522 2004-08-06
  • 打赏
  • 举报
回复
哈哈,那我删除user_id时为主键的不让删除啊!!!
zjcxc 元老 2004-08-06
  • 打赏
  • 举报
回复
ALTER TABLE tb_user ADD user_id INT IDENTITY primary key --设置为主键就可以了.

34,576

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server相关内容讨论专区
社区管理员
  • 基础类社区
  • 二月十六
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧