大侠们SQLSERVER字段问题有办法解决吗?(30分)

  • 主题发起人 主题发起人 tippchlj
  • 开始时间 开始时间
T

tippchlj

Unregistered / Unconfirmed
GUEST, unregistred user!
SQLSERVER中有个Int字段自动增长属性,如果把数据库清空了,为什么它还是从清空之前的最大记录值开始?有办法避免吗?
 
1、重新创建数据表.<br>2、清空数据后,将自增属性修改为非自增属性,然后再修改为自增。
 
自动增长并不代表从1开始和中间不间断,只保证不重复(就算重新从1开始,以后还会出现这样的情况)!建议放弃此设计理念
 
2楼的方法肯定可以 不过不知道你具体用在什么情况(如果程序在删除表后 创建失败那就影响大了..建议不使用..当然这有补救方法..在程序启动时就判断表是否存在)<br>如果是要显示用的话 自动增长列不用管他 再加一列你排序的列(写个函数取当前最大值加1,当然删除时要对N之后的记录做-1处理)
 
用TRUNCATE TABLE清空表,会重置自增字段
 
是啊,用truncate table才會重新編號
 
truncate &nbsp; table &nbsp; yourtable 肯定行,请给分.
 
truncate &nbsp; table &nbsp; tableName 肯定行<br>delete from tableName &nbsp;还是从清空之前的最大记录值开始
 
哈! 又学会一招:D
 
可以用set identity_insert 表名 on打开自动增长列的输入,输入完后再用set identity_insert 表名 off关闭,自增长序号就会从你手动输入的数字接下去了
 
Truncate可以么?没试过啊
 
同意楼上的
 
(1)TRUNCATE TABLE 表名 &nbsp; -- 自动编号重置 表中数据将全部清除<br>(2)如果需要更改自动编号字段计数起始值可以使用DBCC命令,如<br>&nbsp; &nbsp; DBCC CHECKIDENT (表名,RESEED,100) &nbsp; &nbsp; &nbsp;-- 自动编号字段下一个从101开始计。
 
哈哈。大富翁的网友们都很热心啊。哈哈。谢谢了。
 
呵呵。给分!
 
后退
顶部