在用database desktop 建数据库时,怎样往字段中添加图片,声音一类的数据,
(在设计时和运行时各是怎样),详细给答案者给分

解决方案 »

  1.   

    用blob字段,loadfromstream或loadfromfile就行了
      

  2.   

    //从剪贴板中加图片到数据库
    procedure TForm1.Button1Click(Sender: TObject);
    var
      bp: tbitmap;
      fs: tmemorystream;
      s: string;
    begin
     with adotable1 do
     begin
      if  Clipboard.HasFormat(CF_bitmap) then
        begin
          adotable1.Append;
          bp := tbitmap.create; 
          fs := tmemorystream.create;
          bp.Assign(clipboard);  
          bp.SaveToStream(fs);
          setlength(s, fs.size);
          fs.position:=0;
          fs.readbuffer(pointer(s)^, fs.size);
          adotable1md_bmp.LoadFromStream(fs);
          post;
        end 
        else
           showmessage('剪贴板中没有图像');
     end;
    end;
      

  3.   

    忘了加
    uses
    clipbrd;
      

  4.   

    procedure TForm1.BitBtn1Click(Sender: TObject);
    var
      AStream: TStream;
      LwFile : TSearchRec;
    begin
    memo1.Clear;
    adoquery1.Open;
    ADOQuery1.Edit;
    if FindFirst('e:\delphi\jpg\*.jpg',0,LwFile)=0 then
         begin
          memo1.Lines.Add(LwFile.Name);
          AStream :=TFileStream.Create(LwFile.Name, fmOpenRead);
             adoquery1.Append;
             TBlobField(ADOQuery1.FieldByName('jpg')).LoadFromStream(AStream);
             ADOQuery1.Post;
             AStream.Free;
             end;
             while FindNext(LwFile)=0 do
             begin
             memo1.Lines.Add(LwFile.Name);
             AStream :=TFileStream.Create(LwFile.Name, fmOpenRead);
             adoquery1.Append;
             TBlobField(ADOQuery1.FieldByName('jpg')).LoadFromStream(AStream);
             ADOQuery1.Post;
             AStream.Free;
             end;
             showmessage('aaa');
    end;
    请给分
      

  5.   

    那意思就是说,还必须作个程序才能往数据库里加BLOB字段数据,直接往里加还不行。象这种
    加法太费事,能不能象和加其他类型数据那样直接加,请楼上的高手回答,回答完后,我就接贴了
      

  6.   

    好像不能直接加
    另外可以将IMAGE中的图像加入数据库中
    var MS: TMemoryStream; J1: TJPEGImage;
    begin
         MS := TMemoryStream.Create;    
         J1 := TJPEGImage.Create;  with adotable1 do
        begin
           Append;
           J1.Assign(Image1.Picture);
           J1.SaveToStream(MS);
           adotable1md_bmp.LoadFromStream(MS);
           Post;
         end;
         MS.Free;
         J1.Free;
    end;
      

  7.   

    可以直接加
    用fieldbyname('ziduan').assign()