Hola.
Hasta donde tengo entendido,
Firebird no soporta el pasaje de campos tipo
BLOB o
ARRAY en los procedimientos almacenados.
¿ No te sirve usar un
TIBQuery o
TIBDataSet ?, por ejemplo:
Código Delphi
[-]
procedure GetBlobField(Qry: TIBQuery; RE: TRichEdit; const aID: Integer);
var
Stream: TStream;
begin
Qry.Close;
Qry.SQL.Text := 'SELECT CAMPO_BLOB FROM TABLA WHERE ID = :P_ID';
Qry.ParamByName('P_ID').AsInteger := aID;
Qry.Open;
Stream := TMemoryStream.Create;
try
TBlobField(Qry.FieldByName('CAMPO_BLOB')).SaveToStream(Stream);
Stream.Seek(0, soFromBeginning);
RE.PlainText:= False;
RE.Lines.LoadFromStream(Stream);
finally
Stream.Free;
end;
end;
Saludos
