Ver Mensaje Individual
  #1  
Antiguo 23-05-2007
ramiretor ramiretor is offline
Miembro
 
Registrado: may 2003
Ubicación: México
Posts: 196
Reputación: 22
ramiretor Va por buen camino
Problema con TFileStream en Campo Blob

Buenas a todos:
Tengo el siguiente problema, por razones del destino tengo que guardar archivos en un campo de base de datos. Uso Delphi 2006 base de datos DB2 y componentes dbExpress. Despues de intentar por varios métodos, encontramos (porque asi nos lo sugirió alguien en Borland ) que a un TSimpleDataSet se le pueden pasar los parámetros, de la siguiente manera

Código Delphi [-]
procedure GuardaArchivo;
var
  Archivo: TFileStream;
begin
 
  Archivo := TFileStream.Create(MiArchivo, fmOpenRead);
  with SimpleDataSet do
  begin
     DataSet.ParamByName('NUMCIA').AsInteger := NumCia;
     DataSet.ParamByName('USERID').AsInteger := User;
     DataSet.ParamByName('ARCHIVO').LoadFromStream(Archivo, ftBlob);
     Execute;  
  end;

  FreeAndNil(Archivo);

end;

Esta rutina funciona bien, cuando se trata de un solo registro para guardar pero ahora tenemos el problema de que como la llave de esa tabla son los primeros dos parámetros, si en un mismo proceso (queremos guardar el mismo archivo para varios usuarios) marca el error"El archivo está siendo usado por otro proceso" y solo guarda el primer registro

¿Alguien me puede ayudar?
Gracias
__________________
Ernesto R.
Responder Con Cita