SQL SERVER 数据库表的内容没有真正清空——有关自动序列号的问题?

时间:2021-09-12 20:49:28
我建了一张表,用自动序列号作主键的,不断地往这表里输入数据,打印完后又要及时地删除,但我发现自动序列号一直在上升,那是数据没有真正清空吗?如果数据真正清空了,那就不管了。但这样又不妥当了,日积月累地话,自动序列号不是要溢出了吗?我想清空表里的数据后,自动序列号能够重新计数。不知道可以实现吗?该怎么做?望指点。多谢!

15 个解决方案

#1


It's too easy.

方法1:
truncate table TableName;

方法2:
dbcc checkident(TableName,reseed,0);

#2


方法1是既清空表中數據,又將種子字段複位.

方法2是只將種子字段複位.

根據你的實際情況選一種.

#3


那我现选择第一种的话,只要把 delete from tablename 这句代码换成你的那句就行了?

#4


不錯.

#5


多谢zhuzhichao(竹之草) 大侠的关注,等我试了给你加分。OK?

#6


ok

#7


to zhuzhichao(竹之草):方法1可以,方法2并没有将id号重置是怎么回事?谢谢!

#8


to zhuzhichao(竹之草):还有一个问题就是在access数据库应该怎样实现?谢谢!

#9


楼上的,你是什么写的?我怎么不行?
truncate 应该是命令吧?我照样写了  truncate table zkcj2,出错为“illegal data type”.不合逻辑的数据类型?什么意思啊?该怎么写啊?很简单的事,我怎么这么难啊啊?

#10


zhuzhichao(竹之草) 大侠,还在吗?我还没好呢?请指点啊!

#11


你是在SQL Server的Query Analyzer中寫
還是在pb中寫?

如果是在Query Analyzer中寫:
truncate table zkcj2;
就行了

在pb程序中這樣試試:
String strSql = 'truncate table zkcj2';
execute immediate :strSql using sqlca;

#12


to zfsusu(波斯猫):你把truncate table zkcj2;放在
pb的database中的isql sessino1里执行一下看看就知道能不能用了。
语句结尾记得加 ;号。

#13


我是在 PB 里写,写在一个命令按扭上。要达到的效果就是每次清空表里的旧数据,然后种子复位。

#14


在Query Analyzer中寫:
truncate table zkcj2;
是可以的。
在pb的database中的isql sessino1里执行,却没反应。我写了这句代码,然后点了execute 的按扭,没反应。操作应该没问题吧?

#15


zhuzhichao(竹之草) 可以了,多谢大侠及各位朋友!

#1


It's too easy.

方法1:
truncate table TableName;

方法2:
dbcc checkident(TableName,reseed,0);

#2


方法1是既清空表中數據,又將種子字段複位.

方法2是只將種子字段複位.

根據你的實際情況選一種.

#3


那我现选择第一种的话,只要把 delete from tablename 这句代码换成你的那句就行了?

#4


不錯.

#5


多谢zhuzhichao(竹之草) 大侠的关注,等我试了给你加分。OK?

#6


ok

#7


to zhuzhichao(竹之草):方法1可以,方法2并没有将id号重置是怎么回事?谢谢!

#8


to zhuzhichao(竹之草):还有一个问题就是在access数据库应该怎样实现?谢谢!

#9


楼上的,你是什么写的?我怎么不行?
truncate 应该是命令吧?我照样写了  truncate table zkcj2,出错为“illegal data type”.不合逻辑的数据类型?什么意思啊?该怎么写啊?很简单的事,我怎么这么难啊啊?

#10


zhuzhichao(竹之草) 大侠,还在吗?我还没好呢?请指点啊!

#11


你是在SQL Server的Query Analyzer中寫
還是在pb中寫?

如果是在Query Analyzer中寫:
truncate table zkcj2;
就行了

在pb程序中這樣試試:
String strSql = 'truncate table zkcj2';
execute immediate :strSql using sqlca;

#12


to zfsusu(波斯猫):你把truncate table zkcj2;放在
pb的database中的isql sessino1里执行一下看看就知道能不能用了。
语句结尾记得加 ;号。

#13


我是在 PB 里写,写在一个命令按扭上。要达到的效果就是每次清空表里的旧数据,然后种子复位。

#14


在Query Analyzer中寫:
truncate table zkcj2;
是可以的。
在pb的database中的isql sessino1里执行,却没反应。我写了这句代码,然后点了execute 的按扭,没反应。操作应该没问题吧?

#15


zhuzhichao(竹之草) 可以了,多谢大侠及各位朋友!