我写了一个更新数据库内容的过程,如下:
procedure TUserForm.UpdateCardStatus(pQuery:TZQuery;nStatus:string;nMode:integer);
var
  sOldSql,sNewSql:string;
begin
  sOldSql:=pQuery.SQL.Text ;
  if(nMode=1)or(nMode=2)then
    sNewSql:='update CardData set Status=' + nStatus +' where CardNo=0001'
  else if(nMode=3)then
    sNewSql:='update CardData set CardUser='''',CanUse=''0'',Status=' + nStatus +' where CardNo=0001';
  pQuery.SQL.Clear ;
  pQuery.SQL.Add(sNewSql);
  pQuery.ExecSQL ;
  pQuery.SQL.Text :=sOldSql;
end;
在调用这个过程时赋值情况是这样的,
nStatus:='暂停使用';
nMode:=2;
pQuery:=DataModule1.CardZQuery;
在执行时报错说:列名'暂停使用'无效,不知为什么?
我若直接写:'update CardData set Status=''暂停使用'' where CardNo=0001'就可以通过,请大家指点一二吧.