我的access表里有两个字段分别为小数和整数类型,我用delphi怎样才能给他们插入值,
在sqls里有cast函数,access怎么办?

解决方案 »

  1.   

    没有吧,这和其它的有什么区别,还不是一样
    table.fieldbyname('name').asinteger=value//整数
    table.fieldbyname('name').asfloat=value//小数
    or
    query.sql.add('insert into tablename (field1,field2) values(2332,3434.12)
      

  2.   

    看来我没说清楚,其实我的关键问题在于adquery的SQL语句里用什么样的函数(access可用的)才能实现把字符类型转换为小数或整数。var
      bh,wp :string;
      dj:real;
      bh:=edit1.text; 
      wp:=edit2.Text;
      dj:=strtofloat(edit6.Text);
    //表里dj的数据类型是小数,用的access表
     SQLString:='insert into bh (bh,name,dj) '+
     'values ('+''''+bh+''''+','+''''+wp+''''+','+'csng('+''''+dj+''''+')'+')';
    但说csng参数不对,请指教?
      

  3.   

    干吗要转换,使用这个就可以了
    var
      bh,wp :string;
      dj:real;
      bh:=edit1.text; 
      wp:=edit2.Text;
      dj:=strtofloat(edit6.Text);
      SQLString:='insert into bh (bh,name,dj) values ('''+bh+''','''+wp+''','+dj+')';这样就可以了
      

  4.   

    错了点儿,换成var
      bh,wp :string;
      dj: string; //也是string类型就可以
    begin
      ...
      bh:=edit1.text; 
      wp:=edit2.Text;
      dj:=edit6.Text;
      SQLString:='insert into bh (bh,name,dj) values ('''+bh+''','''+wp+''','+dj+')';这样就可以了
      

  5.   

    但插进去后只有整数部分,如2.3插进后只有2在表里,但是字段类型是为小数呀,小数位数设为两位
    怎么回事,access真它妈烦!
      

  6.   

    那与sql语句无关,是数据库设置问题,自己找找试试看