delphi整型变量相除,要求结果为小数

sqlsever表中字段‘概率’的数据类型是decimal9(18,6),现在用delphi将两整型变量相除,所得结果存放在表中。例如
var
a,b:integer;
p0:double;
begin
p0:='a/b'---------我知道这么写肯定不对,正确的是怎样呢?
adoquery1.SQL.add('update table1 set p=p0 where 。。。);

var
a,b:integer;
p0:double;
begin
p0:=a/b; // a/b 得的值会自动转为double赋给p0的. 如果要保留小数位数要用到Format函数.
adoquery1.SQL.add('update table1 set p='+currtostr(p0)+' where.....'); //sql中这么写,字符串的拼接问题,要把p0转为字符串.
温馨提示:答案为网友推荐,仅供参考
第1个回答  2009-04-28
procedure TForm1.Button1Click(Sender: TObject);
var
m , n : Integer;
x : double;
begin
m := StrToInt(edt1.Text);
n := StrToInt(edt2.Text);
x := m/n;
edt3.Text := FloatToStr(x);
end;
没搞懂你要干什么,不过好像就是数据转换那你写的不对,上面的这个例子可以达到你的要求啊,希望能帮助你.....

参考资料:self.knowledge

第2个回答  2009-04-28
好像办不到吧,为什么要用整形变量得到小数类型呢?规定你要这样做吗?
第3个回答  2009-04-29
你写的是对的,只是SQL 不对