Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   SQL (https://www.clubdelphi.com/foros/forumdisplay.php?f=6)
-   -   Error en el modulo sqloledb.dll (https://www.clubdelphi.com/foros/showthread.php?t=24133)

gcaffe 09-08-2005 18:26:40

Error en el modulo sqloledb.dll
 
Hola a todos:

Quisiera que me ayudaran en el siguiente tema:

tengo un TADOStoreProc que ejecuta un procedimiento almacenado del SQL Server 2000.
Cuando se hace clic a un botón de búsqueda se ejecuta el siguiente procedure mostrando el resultado en un Grid

Código Delphi [-]
procedure TfrmComunidades.MuestraComunidades(Sender: TObject);
begin
  with DM do begin
     ComLkUp.Active := False;
     ComLkUp.ProcedureName := 'ComunidadesVER;1';
     ComLkUp.Prepared := True;
     ComLkUp.Active := True;
  end;
end;

El procedimeinto almacenado es tan sencillo como esto:

Código SQL [-]
CREATE PROCEDURE ComunidadesVER
AS
 SELECT * FROM Comunidades ORDER BY Comunidad
GO

La primera vez que se ejecuta lo hace bien, si por alguna razon se hace clic al boton una segunda vez o tercer, a veces sale el siguiente error

Cita:

Access violation at address 4FF833E4 in module 'sqloledb.dll'. Read of address 00000018.
Gracias por su ayuda.

Scorpion Rock 08-02-2006 13:05:58

Resolução do Problema
 
Ative a propriedade "Prepared" do compenente "ComLkUp" pra "True".Reescreva seu código da seguinte forma:procedure TfrmComunidades.MuestraComunidades(Sender: TObject);begin with DM do begin if ComLkUp.ProcedureName <> 'ComunidadesVER;1' then begin
ComLkUp.ProcedureName := 'ComunidadesVER;1';
// Caso tenha algum parâmetro coloque a seguinte linha de código
ComLkUp.Parameters.Refresh;
end;
ComLkUp.ExecProc; end;end;


La franja horaria es GMT +2. Ahora son las 16:02:58.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi