Ver Mensaje Individual
  #2  
Antiguo 11-11-2007
Avatar de marcoszorrilla
marcoszorrilla marcoszorrilla is offline
Capo
 
Registrado: may 2003
Ubicación: Cantabria - España
Posts: 11.221
Reputación: 10
marcoszorrilla Va por buen camino
Sí, se puede, el problema es que si ya tienes números y lo reinicias, te ira "pisando" todos los registros que contenga la tabla cuyos números coincidan.

Por ejemplo, tenemos registros numerados del 1 al 500
Reiniciamos la Tabla a 0. Cuando grabemos el primer registro con la nueva numeración nos eliminará el 1..2 etc.

Yo la renumeración la utilizo para tablas en las que por algún motivo se eliminan todos los registros.

Utilizo este Procedimiento que cree a propósito.

Código Delphi [-]
Procedure SetAutoInc(filename : string; Value : Longint);
var
mystream : tfilestream;
begin
mystream := tfilestream.create(filename,
            fmOpenWrite + fmShareExclusive);
  try
    mystream.Seek(73, soFromBeginning);
    mystream.Writebuffer(Value, SizeOf(Value));
  finally
    mystream.Free;
  end;
end;

Ejemplo de llamada para poner el Autoincremento a 0 de la Tabla LinAlbar.Db que se encontraría en la dirección c:\Alfa\Datos\
Código Delphi [-]
SetAutoInc('C:\Alfa\Datos\LinAlbar.db',0);

Un Saludo.
__________________
Guía de Estilo de los Foros
Cita:
- Ça c'est la caisse. Le mouton que tu veux est dedans.

Última edición por marcoszorrilla fecha: 11-11-2007 a las 21:56:17.
Responder Con Cita