小弟今天开始接触数据库,用的ADO访问ACCESS。遇到一个问题,在查询的时候如何才能把变量带进去。
比如
 int  a,b然后查询的时候要在大于a小于b中选择。我是这样写的SQL语句  select * from  tabe where "金额">=a and "金额"<=b;但是查不来的时候不是我想要的结果。望大家给点意见

解决方案 »

  1.   

    CString sSql;
    sSql.Format("select * from table where 金额>=%d and 金额<=%d",a,b);
      

  2.   

    1楼是正解,初学者对SQL的注入错误请注意,就是当SQL语句中涉及到字符串变量的时候,而字符串变量中带有单引号,这时执行SQL语句就会异常,解决办法是把字符串变量中的单引号全部替换为两个单引号。
      

  3.   

    CString sSql;
    sSql.Format("select * from table where 金额>=%d and 金额<=%d",a,b);
     这个我试了的不得行?最后会报错的
      

  4.   

    _bstr_t(sSql)
    填sql还得转化下
      

  5.   

    CString sSql;
    sSql.Format("select * from table where '金额'>=%d and '金额'<=%d",a,b);