SQL SERVER的自增量列是在哪个系统表中为其维护自增数值的?

yfan 2003-10-21 09:30:35
如题!

请给我朋友帮忙了, 谢谢了!
...全文
93 11 打赏 收藏 转发到动态 举报
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
lijinqiang 2003-10-22
  • 打赏
  • 举报
回复
可以在企业管理器中设置
yfan 2003-10-22
  • 打赏
  • 举报
回复
非常感谢各位朋友的解答!
再次忠心感谢!
yfan 2003-10-21
  • 打赏
  • 举报
回复
自增量字段在自动增加到一定数值后,是否可以手工修改(例如复位为0)!

谢谢了,大哥们!
pengdali 2003-10-21
  • 打赏
  • 举报
回复
select ident_current('表名')
IDENT_INCR ( 'table_or_view' ) -- 获得步长
IDENT_SEED ( 'table_or_view' ) -- 获得种子
yfan 2003-10-21
  • 打赏
  • 举报
回复
这个增量值应该在系统的某个表中保存,大家帮忙啊!
cheong 2003-10-21
  • 打赏
  • 举报
回复
好像在 index 中
txlicenhe 2003-10-21
  • 打赏
  • 举报
回复
没有系统表吧?
也许有,我没找到。
aierong 2003-10-21
  • 打赏
  • 举报
回复
DBCC CHECKIDENT
检查指定表的当前标识值,如有必要,还对标识值进行更正。


A. 如有必要,重置当前标识值
下例在必要的情况下重置 jobs 表的当前标识值。

USE pubs
GO
DBCC CHECKIDENT (jobs)
GO

B. 报告当前标识值
下例报告 jobs 表中的当前标识值;如果该标识值不正确,并不对其进行更正。

USE pubs
GO
DBCC CHECKIDENT (jobs, NORESEED)
GO

C. 强制当前标识值为 30
下例强制 jobs 表中的当前标识值为 30。

USE pubs
GO
DBCC CHECKIDENT (jobs, RESEED, 30)
GO

aierong 2003-10-21
  • 打赏
  • 举报
回复
用truncate方法删除表里面所有数据

TRUNCATE TABLE
删除表中的所有行,而不记录单个行删除操作。

语法
TRUNCATE TABLE name

TRUNCATE TABLE 删除表中的所有行,但表结构及其列、约束、索引等保持不变。新行标识所用的计数值重置为该列的种子。如果想保留标识计数值,请改用 DELETE。如果要删除表定义及其数据,请使用 DROP TABLE 语句。

pengdali 2003-10-21
  • 打赏
  • 举报
回复
dbcc checkident(你的表名,reseed,0)
pengdali 2003-10-21
  • 打赏
  • 举报
回复
有兩種方法:
方法1:
truncate table 你的表名 --這樣不但將數據刪除,而且可以重新置位identity屬性的字段。

方法2:
delete from 你的表名
dbcc checkident(你的表名,reseed,0) --重新置位identity屬性的字段,讓其下個值從1開始

34,576

社区成员

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

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