我用从recordset类继承的子类CTimeSet类进行access里面数据表的操作,该类生成的时候选择绑定到数据表上,表名为infomation,里面有三个域:userid(文本类型),username(文本类型),curtime(日期时间类型)。生成的CTimeSet类里面对应的成员变量为
CString m_userid;
CString m_username;
CTime m_CurTime;
在程序里面要修改CurTime,用了update,代码如下:
         CTimeSet* m_recordset = new CTimeSet(&m_database);
         CString strSQL;
         strSQL.Format("select * from time1 where userid='%s'",m_mainuserid);
         CTime curTime;
         curTime = CTime::GetCurrentTime();
         m_curtime = curTime.Format("%H:%M:%S" );
         try{
                  m_recordset->Open(AFX_DB_USE_DEFAULT_TYPE,strSQL);
                  m_recordset->Edit();
                  m_recordset->m_CurTime = curTime;
m_recordset->Update();
         ...
可是运行的时候到这里总是弹出对话框:更新或删除操作未涉及任何数据行
跟踪进去到系统函数的代码里面发现值根本没有传进去。
但是如果我改成对m_username进行更改就没有问题,
请问各位这个是怎么回事啊?一般对时间类型的数据表项是这么操作的吗?