我用VC开发一个程序,打算执行下列语句,使BOOK表中的Flag_Borrow字段由是变成否.
mSqlStr.Format( "UPDATE BOOK SET Flag_Borrow =0 WHERE r_ID=''" ,m_strBookID);
mDB.ExecuteSQL(mSqlStr);
数据库我是用ACCESS建的.Flag_Borrow的字段类型就是是/否.但是执行完后,该字段并没有变化.而类似的下一句则成功变化了.
mSqlStr = "UPDATE READER SET r_BorrowNum=r_BorrowNum+1 WHERE r_ID='"+m_rsReaderDataSet.m_r_ID;
mSqlStr = mSqlStr + "'";
请问是什么原因?如何改正?

解决方案 »

  1.   

    mSqlStr.Format( "UPDATE BOOK SET Flag_Borrow =0 WHERE r_ID=''" ,m_strBookID);
    mDB.ExecuteSQL(mSqlStr);UPDATE BOOK SET Flag_Borrow =0 WHERE r_ID=''
    是这个意思吗,r_ID = ''   ???
      

  2.   

    string:
    mSqlStr.Format( "UPDATE BOOK SET Flag_Borrow =0 WHERE r_ID='%s'" ,m_strBookID);
    int:
    mSqlStr.Format( "UPDATE BOOK SET Flag_Borrow =0 WHERE r_ID=%d" ,m_strBookID);