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