Ver Mensaje Individual
  #1  
Antiguo 25-02-2009
cesar_gta86 cesar_gta86 is offline
Miembro
 
Registrado: oct 2007
Posts: 32
Reputación: 0
cesar_gta86 Va por buen camino
Question Cómo volver los registros a cero de una tabla con autoincremento como campo clave?

Hola que tal amigos, lo que pasa es que necesito volver los registros a cero, tengo una tabla con el campo clave autoincrementable. Ya he tratado de utilizar una función que hace tiempo me proporcionaron, pero ahora que la quiero utilizar me manda un mensaje de que la tabla que quiero volver los registros a cero, no la puede abrir, y según yo le doy la ruta correcta.

Evento:
Código Delphi [-]
procedure TForm2.Button1Click(Sender: TObject);
var
direccion:string;
begin
Table3.Active:=true;
Table3.First; //préstamos
if Table3.FieldByName('No_prestamo').AsString<>'' then
begin
Table3.Active:=false;
//direccion:= ExtractFilePath(ParamStr(0)); ejecutable cuando ya tenga el programa en ejecutable
direccion:='C:\Documents and Settings\César Alberto\Escritorio\Sistema Control_documentos bueno\Control_documentos\B.D\prestamos.db';
// direccion:=direccion+'Carreras.db'; ejecutable
SetAutoInc(direccion,0);
MessageDlg('Han sido eliminados todos los registros de los préstamos...', mtInformation, [mbok],0);
close;
end;
end;




Función:

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;




Ha, y primero no me marcaba error, y si regresaba el contador de registros a cero, pero no los eliminaba.

Saludos y grácias de antemano.

Última edición por marcoszorrilla fecha: 25-02-2009 a las 06:49:01.
Responder Con Cita