回 帖 发 新 帖 刷新版面

主题:怎样把字符型数据保存到money型数据里

以下是我的代码:
procedure TFExecuteCharge.Button1Click(Sender: TObject);
var
  id:integer;
  str,aaa:string;
begin
  if Edit3.Text = '' then
    ShowMessage('收费人不能为空!')
  else
  begin
    id := 1;
    aaa := Edit1.Text;
    str := 'insert into T_charge(学号,姓名,收费金额,收费日期,收费人) values';
    str := str+'('''+DBEdit1.Text+''','''+DBEdit2.Text+''',';
    str := str+' '''+aaa+''','''+Edit2.Text+''','''+Edit3.Text+''')';
    Flogin.My_Execute(id,str,ADOQuery1);
    ShowMessage('缴费成功!');
  end;
end;
运行时它就提示:不允许数据类型varchar到数据类型money的稳性转换,请问应该怎样改!

回复列表 (共1个回复)

沙发

你用显式类型转换试下
str := str+' case('+aaa+' as money),'+Edit2.Text+''','''+Edit3.Text+''')';

我来回复

您尚未登录,请登录后再回复。点此登录或注册