Zerar autoincremento
tem como zerar um campo identificado como [b:c9218b94cd]identity(1,1) [/b:c9218b94cd]????
Arc
Curtidas 0
Respostas
Dephiro
04/10/2004
Quanto trabalhamos com tabelas Paradox e apagamos o seus registros, o contador do campo AutoIncremento não é zerado, criando muitas vezes um grande inconveniente. Para resolver esse problema, use a seguinte função:
function ResetAutoInc(FileName: TFileName; Base: Longint): Boolean;
begin
with TFileStream.Create(FileName, fmOpenReadWrite) do
Result := (Seek($49, soFromBeginning) = $49) and (Write(Base, 4) = 4);
end;
O parâmetro FileName é o nome da tabela, incluindo o caminho. E o parâmetro Base é o valor inicial para o contador do AutoIncremento.
function ResetAutoInc(FileName: TFileName; Base: Longint): Boolean;
begin
with TFileStream.Create(FileName, fmOpenReadWrite) do
Result := (Seek($49, soFromBeginning) = $49) and (Write(Base, 4) = 4);
end;
O parâmetro FileName é o nome da tabela, incluindo o caminho. E o parâmetro Base é o valor inicial para o contador do AutoIncremento.
GOSTEI 0
Arc
04/10/2004
to usando sql server 2000
GOSTEI 0
Dephiro
04/10/2004
Não dá pra tentá o mesmo código em sql2000? Talvez mudando uma coisinha aqui talvez dá!
GOSTEI 0
Arc
04/10/2004
Esta dica foi passada pelo nosso amigo Marcus Magalhães
Para quem precisar :
[b:e45133b4dd]DBCC CHECKIDENT (´NomedaTabela´, reseed, 0) [/b:e45133b4dd]
Funciona belezinha....
Abraço
Para quem precisar :
[b:e45133b4dd]DBCC CHECKIDENT (´NomedaTabela´, reseed, 0) [/b:e45133b4dd]
Funciona belezinha....
Abraço
GOSTEI 0
Quadrado
04/10/2004
Isto funciona para Access. Se não funcionar, alguem sabe como fazer ?
Quadrado
Quadrado
GOSTEI 0
Arc
04/10/2004
Eu executei este comando no Query Analyzer do Sql Server 2000 e funcionou ....
GOSTEI 0