//注:re为Memo类型字段,表member_payout是使用paradox7建的表格,以下代码能成功编译,且其他字段均能成功修改。 if frmAdd.ModalResult = mrOk then
begin
strSql :='update member_payout set member_id=:v1,payout_date=:v2,payout_type=:v3,';
strSql :=strSql+ 'payout_menoy=:v4,re=:v5 where member_payout_id =:v6 '; DM.QueryUpdate.Close ;
DM.QueryUpdate.SQL.Clear;
DM.QueryUpdate.SQL.Add(strSql);
DM.QueryUpdate.Prepare ;
DM.QueryUpdate.ParamByName('v1').AsInteger := frmAdd.nMember_id;
DM.QueryUpdate.ParamByName('v2').AsDate := frmAdd.DBDateTimeEditEh1.Value;
DM.QueryUpdate.ParamByName('v3').AsString := frmAdd.DBComboBoxEh1.Value;
DM.QueryUpdate.ParamByName('v4').AsFloat := frmAdd.DBNumberEditEh1.Value;
DM.QueryUpdate.ParamByName('v5').AsString := frmAdd.Memo1.Lines.Text ; //无法更新此字段
DM.QueryUpdate.ParamByName('v6').AsInteger :=nRecord; DM.QueryUpdate.ExecSQL;
end;
begin
strSql :='update member_payout set member_id=:v1,payout_date=:v2,payout_type=:v3,';
strSql :=strSql+ 'payout_menoy=:v4,re=:v5 where member_payout_id =:v6 '; DM.QueryUpdate.Close ;
DM.QueryUpdate.SQL.Clear;
DM.QueryUpdate.SQL.Add(strSql);
DM.QueryUpdate.Prepare ;
DM.QueryUpdate.ParamByName('v1').AsInteger := frmAdd.nMember_id;
DM.QueryUpdate.ParamByName('v2').AsDate := frmAdd.DBDateTimeEditEh1.Value;
DM.QueryUpdate.ParamByName('v3').AsString := frmAdd.DBComboBoxEh1.Value;
DM.QueryUpdate.ParamByName('v4').AsFloat := frmAdd.DBNumberEditEh1.Value;
DM.QueryUpdate.ParamByName('v5').AsString := frmAdd.Memo1.Lines.Text ; //无法更新此字段
DM.QueryUpdate.ParamByName('v6').AsInteger :=nRecord; DM.QueryUpdate.ExecSQL;
end;
试试这样好使不?TParam( DM.QueryUpdate.ParamByName( 'v5 ') ).AsMemo:= Memo1.Text;
此方法可行,多谢!!!!!!!!