TSTRINGGRIP + UPDATE SQL 有关问题

TSTRINGGRIP + UPDATE SQL 问题
EXCEL檔有2栏 : keyno, partno 
sql table tpadea 主要有 2栏 : dea001 及 dea004

载入excel檔到 Tstringgrid1(已弄好), 每一行与tpadea 比較, 如找到相同的key(dea001); 就更新tpadea的partno(DEA004) 为 tstringgrip的partno. (StringGrid1.Cells[7, r])

以下方法失敗, 请问应该怎样更正? 谢谢.

procedure TForm1.Button1Click(Sender: TObject);
var
  r: Integer;
begin
  For r := 1 to StringGrid1.RowCount - 1 do
  with ADOQuery1 do
  begin
  Active := false;
  SQL.Clear;
  SQL.Add('UPDATE TPADEA');
  SQL.Add('SET DEA004 = StringGrid1.Cells[7, r] WHERE DEA001=StringGrid1.Cells[5, r]');
  ExecSQL
  end;
  ADOQuery1.Refresh;
  end;
 end.

------解决方案--------------------
Delphi(Pascal) code
SQL.Add('SET DEA004 = '+Quotedstr(StringGrid1.Cells[7, r])+' WHERE DEA001='+Quotedstr(StringGrid1.Cells[5, r]));

------解决方案--------------------
Delphi(Pascal) code
如果DEA001字段类型是整数
SQL.Add('SET DEA004 = StringGrid1.Cells[7, r] WHERE DEA001='+StringGrid1.Cells[5, r]);

如果DEA001字段类型是字符串
SQL.Add('SET DEA004 = StringGrid1.Cells[7, r] WHERE DEA001='+quotedstr(StringGrid1.Cells[5, r]));

------解决方案--------------------
1楼就是正确答案了...前提是你的字段类型都是字符串.