给一段存储二进制的代码给你,你改一下就可以了
procedure Tfrmwxht.Btn_tjhtwjClick(Sender: TObject);
Var ms:TMemoryStream;
    i:Integer;
    s:string;
begin
  //检查是否具有权限
  With Aqry_w do
  begin
    Close;
    SQL.Clear;
    SQL.Add('SELECT * FROM WXHTQX WHERE DLYH=:DLYH');
    Parameters.ParamByName('DLYH').Value:=frmLogin.Yonghu;
    Prepared:=true;
    Open;
  end;//With Aqry_w do
  if (Aqry_w.RecordCount=0) then
  begin
    Application.MessageBox('你没有该权限!如有需要,请联系管理员','提示',48);
    Exit;
  end;
  if not(Aqry_w['TJHTWJ']) then
  begin
    Application.MessageBox('你没有该权限!如有需要,请联系管理员','提示',48);
    Exit;
  end;  if Aqry_s.IsEmpty then
  begin
    Application.MessageBox('数据为空!请选择项目名称','提示',48);
    Exit;
  end;//if Aqry_s.IsEmpty then  if OpenDialog1.Execute then
  begin
    B_Change:=false;
    s:='';
    //取得文件名
    for i:=1 to length(ExtractFileName(OpenDialog1.FileName)) do
    begin
      if ExtractFileName(OpenDialog1.FileName)[i]='.' then Break;
      s:=s+ExtractFileName(OpenDialog1.FileName)[i];
    end;
//    showmessage(s);
    frmhtmc.Edt_htmc.Text:=s;
    frmhtmc.ShowModal;
    if B_change then
    begin
      ms:=TMemoryStream.Create;
      ms.LoadFromFile(OpenDialog1.FileName);
      ADOConnection1.BeginTrans;
      Try
      Panel7.Caption:='文件正在上传服务器.........';
      With Aqry_w do
      begin
        Close;
        SQL.Clear;
        SQL.Add('INSERT INTO HTWJ_WX (WJMC,XYBH,WORKFILE) VALUES(:WJMC,:XYBH,:WORKFILEE)');
        Parameters.ParamByName('WJMC').Value:=Trim(frmhtmc.Edt_htmc.Text);
        Parameters.ParamByName('XYBH').Value:=Aqry_s['XYBH'];
        Parameters.ParamByName('WORKFILEE').LoadFromStream(ms,ftBlob);
        Prepared:=true;
        Execsql;
      end;//With ADOQuery1 do
      ms.Free;
      ADOConnection1.CommitTrans;
      Panel7.Caption:='文件上传完毕!';
      Except
      ADOConnection1.RollbackTrans;
      ms.Free;
      Application.MessageBox('文件上传服务器失败!','提示',48);
      end;//Try
    end;//if B_change then
  end;// if OpenDialog1.Execute then
//  showmessage(frmlogin.ConnctionString);
end;