看看下面这个问题吧:
  strSql:='select quduimingcheng,TB10 from bjuejin where     
             bjuejin.month='+#39+formatDateTime('m',now)+#39+'';
  query1.sql.add(strSql);
  query1.open;
能通过编译,但执行到上面怎么老说数据类型不匹配,month是整型的,
'+#39+formatDateTime('m',now)+#39+'怎么变成整型的

解决方案 »

  1.   

    去掉#39  strSql:='select quduimingcheng,TB10 from bjuejin where     
                 bjuejin.month='+formatDateTime('m',now);
      query1.sql.add(strSql);
      query1.open;
      

  2.   


    sysu(死树) :可以通过编译,运行时access返回“数据类型不匹配”的错误提示
      

  3.   

    要转换数据类型,ACCESS好像不支持CONVERT函数,看你数据库中月份是什么类型的,然后把formatDateTime('m',now)转换过来不就ok了吗
      

  4.   

    bjuejin.month='+formatDateTime('m',now);
    这句话等号左面是int型的,右面是什么型的?
      

  5.   

    strSql := 'select quduimingcheng,TB10 from bjuejin where bjuejin.month = '
                + FormatDateTime('m',Now);
      Query1.SQL.Text := strSql;
      Query1.Open;
      

  6.   

    strSql := 'select quduimingcheng,TB10 from bjuejin where bjuejin.month = '
                + FormatDateTime('m',Now);
    Query1.SQL.Text := strSql;
    Query1.Open;
    我这里调试通过。(Delphi6+Access2000)