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转为字符串.
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; 没搞懂你要干什么,不过好像就是数据转换那你写的不对,上面的这个例子可以达到你的要求啊,希望能帮助你.....