Club Delphi  
    Paypal   FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Conexión con bases de datos
Registrarse FAQ Miembros Calendario Guía de estilo Buscar Temas de Hoy Marcar Foros Como Leídos

Conexión con bases de datos

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 13-09-2010
Avatar de Casimiro Noteví
Casimiro Noteví Casimiro Noteví is offline
Merodeador
 
Registrado: sep 2004
Ubicación: En algún lugar.
Posts: 32.676
Poder: 10
Casimiro Noteví Tiene un aura espectacularCasimiro Noteví Tiene un aura espectacular
Hola, con esa línea de código únicamente no puedo decirte si todo está bien o hay algo mal

Puedes hacer una búsqueda por clubdelphi, es un tema que se ha tratado infinidad de veces. Por ejemplo... aquí.
Responder Con Cita
  #2  
Antiguo 13-09-2010
waly2k1 waly2k1 is offline
Miembro
 
Registrado: dic 2006
Ubicación: El país de las maravillas(Argentina)
Posts: 251
Poder: 20
waly2k1 Va por buen camino
Solucionado

Ya lo solucione, muchas gracias!
Lo hice desde un Stored Procedure
Posteo por las dudas el codigo por si a alguien le sucede lo mismo,
es un poco mas largo que una simple linea, pero funciona.

Código:
var
    SP:TIBCStoredProc;
begin
    SP := TIBCStoredProc.Create( Self );
    SP.StoredProcName := 'SP_LOGO_UPD';
    SP.Prepare;
    SP.ParamByName( 'IMG_RPTFINAL' ).LoadFromFile( sPICT, ftBlob );
    Data.IBCTran.StartTransaction;
    SP.ExecProc;
    Data.IBCTran.Commit;
Saludos y gracias por tu tiempo!!!
Walter
Responder Con Cita
  #3  
Antiguo 13-09-2010
Avatar de Casimiro Noteví
Casimiro Noteví Casimiro Noteví is offline
Merodeador
 
Registrado: sep 2004
Ubicación: En algún lugar.
Posts: 32.676
Poder: 10
Casimiro Noteví Tiene un aura espectacularCasimiro Noteví Tiene un aura espectacular
Cita:
Empezado por waly2k1 Ver Mensaje
Código:
var
    SP:TIBCStoredProc;
begin
    SP := TIBCStoredProc.Create( Self );
    SP.StoredProcName := 'SP_LOGO_UPD';
    SP.Prepare;
    SP.ParamByName( 'IMG_RPTFINAL' ).LoadFromFile( sPICT, ftBlob );
    Data.IBCTran.StartTransaction;
    SP.ExecProc;
    Data.IBCTran.Commit;
Saludos y gracias por tu tiempo!!!
Walter

No olvides liberar la memoria del SP!!!

Código:
var
  SP:TIBCStoredProc;
begin
  try
    SP := TIBCStoredProc.Create( Nil );
    SP.StoredProcName := 'SP_LOGO_UPD';
    SP.Prepare;
    SP.ParamByName( 'IMG_RPTFINAL' ).LoadFromFile( sPICT, ftBlob );
    Data.IBCTran.StartTransaction;
    SP.ExecProc;
    Data.IBCTran.Commit;
  finally
    SP.Free;   //   <-----
  end;
end;

Última edición por Casimiro Noteví fecha: 21-09-2010 a las 16:18:29.
Responder Con Cita
  #4  
Antiguo 13-09-2010
waly2k1 waly2k1 is offline
Miembro
 
Registrado: dic 2006
Ubicación: El país de las maravillas(Argentina)
Posts: 251
Poder: 20
waly2k1 Va por buen camino
Liberar memoria?

Nunca lo hice y no se me hubiera ocurrido
Estoy finalizando mi aplicacion y 100% SP, pero nunca liberaba la memoria utilizada.
Muchas gracias nuevamente!

Saludos,
Walter
Responder Con Cita
  #5  
Antiguo 13-09-2010
Avatar de Casimiro Noteví
Casimiro Noteví Casimiro Noteví is offline
Merodeador
 
Registrado: sep 2004
Ubicación: En algún lugar.
Posts: 32.676
Poder: 10
Casimiro Noteví Tiene un aura espectacularCasimiro Noteví Tiene un aura espectacular
Pues no lo olvides, es primordial.
Los objectos que nosotros creamos... nosotros lo liberamos.
Los objetos que crea delphi... los libera delphi.

Tu programa irá cogiendo cada vez más y más memoria, cada vez ocupará más en la memoria, surgirán problemas de punteros a memoria direccionada, ¡¡¡crash!!!
¿por qué me sale "acces violation etc...? por eso.
Responder Con Cita
  #6  
Antiguo 21-09-2010
Delfino Delfino is offline
Miembro
 
Registrado: jul 2003
Ubicación: Madrid
Posts: 974
Poder: 24
Delfino Va por buen camino
Código Delphi [-]
SP := TIBCStoredProc.Create( Self );
Cuando creas un componente con un Owner (Self) se destruye cuando se destruye el owner.

Mas eficiente es crear el objeto sin owner :
Código Delphi [-]
SP := TIBCStoredProc.Create(nil);
En este caso hay q destruirlo. Sino AV asegurada
Código Delphi [-]
SP.Free;
__________________
¿Microsoft? No, gracias..
Responder Con Cita
  #7  
Antiguo 21-09-2010
Delfino Delfino is offline
Miembro
 
Registrado: jul 2003
Ubicación: Madrid
Posts: 974
Poder: 24
Delfino Va por buen camino
Aqui se explica pq hay q utilizar mayoritariamente el owner nil.

Por cierto, si tienes Delphi2010 puedes usar los dbExpress con el driver de Firebird q viene incluido..
__________________
¿Microsoft? No, gracias..
Responder Con Cita
Respuesta


Herramientas Buscar en Tema
Buscar en Tema:

Búsqueda Avanzada
Desplegado

Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
¿''?reportmanager y delphi 2010 VCL con firebird 2.1 UTF8 JXJ Varios 0 19-08-2010 19:22:03
Delphi 2010 - Firebird o es tiempo de cambiar? jourdan Conexión con bases de datos 10 04-08-2010 00:43:50
Firebird, Mysql y Delphi 2010 tec Varios 3 16-04-2010 15:34:51
Consejos para Delphi 2007 Win32 sysmar Varios 6 08-03-2008 06:57:51
Consejos para empezar con firebird seoane Firebird e Interbase 21 22-03-2007 05:14:33


La franja horaria es GMT +2. Ahora son las 20:24:31.


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
Copyright 1996-2007 Club Delphi