OLEVariant类型的数据,保存的是jpg照片内容,后台数据库为ORACLE,字段是Long Raw类型的,
要如何直接把OLEVariant类型的数据保存到数据库礼呢?

解决方案 »

  1.   

    将olevariant类型的数据写入内存流,然后调用blobField的LoadFromStream方法即可。
    procedure TForm1.Button1Click(Sender: TObject);
    var
      OleVar: OleVariant;
      s: Pchar;
      strm: TMemoryStream;
      blobField: TBlobField;
    begin
      OleVar := 'abc';
      s := PChar(VarToStr(OleVar));
      strm := TMemoryStream.Create;
      strm.Write(s^,Length(s));
      strm.Position := 0;
      blobField.LoadFromStream(strm);
      FreeAndNil(strm);
    end;不知道合不合你的要求?
      

  2.   

    to fengzhengren(风筝) 
    如果两个进程同时调用这个过程,则会出现死机,我试过了
      

  3.   

    用setblobdata这个方法可以吗?
    该怎么写?