GARANTIR DESCONTO

Fórum Recuperar/Salvar Tipo OID DBExpress #26585

09/08/2006

0

Bom dia.

Alguém sabe me informar como recuperar/salvar arquivos de campos do tipo OID.

Com campos Bytea eu consigo, mas quando tento, por exemplo, ler um OID o DBExpress me mostra um campo do tipo Integer. Sei que o OID armazena somente a identificação do objeto nele armazenado, mas como faço para ler esse objeto, por exemplo para um Stream?

Para ler de um Bytea o código que utilizei foi o seguinte, o que não funciona para um OID:

var
lBlob :TStream;
lFile : TFileStream;
begin
SqlDS.Close;
SqlDS.CommandText := ´select by_picture from public.teste where id_teste = :id´;
SqlDS.Params[0].AsInteger := StrToInt(edIdSelect.Text);
SqlDS.Open;

lBlob := SqlDS.CreateBlobStream(SqlDS.Fields[0], bmRead);
lFile := TFileStream.Create(´c:\tmp\myfile.xxx´, fmCreate or fmOpenWrite);
try
lFile.CopyFrom(lBlob, 0);
finally
lBlob.Free;
lFile.Free;
end;


Amt

Amt

Responder

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar