为什么更新不了数据库阿?急急急!在线等!

miker86 2006-09-18 12:02:19
小弟用ODBC连接access数据库,代码如下:
//创建CUserRcordSet的实例
CUserRecordSet m_UserRecordSet;

try
{
if (m_UserRecordSet.IsOpen())
m_UserRecordSet.Close();

//设置查询条件"UserName=ClientName"
m_UserRecordSet.m_strFilter.Format("UserName = '%s' ", clientName);
m_UserRecordSet.Open(CRecordset::snapshot,NULL,CRecordset::none);
//输出匹配上查询条件用户记录,如果记录为空则返回
if (m_UserRecordSet.IsOpen() && !m_UserRecordSet.IsEOF())
{
//设置编辑当前记录
m_UserRecordSet.Edit();
if (clientStatus == "1")
{
m_UserRecordSet.m_UserStatus == "在线";
}
else if (clientStatus == "0")
{
m_UserRecordSet.m_UserStatus == "离线";
}

m_UserRecordSet.m_UserIP = clientIP;

//如果可以更新,则更新到数据库
if(m_UserRecordSet.CanUpdate())
{
m_UserRecordSet.Update();
}

//关闭记录集
if(m_UserRecordSet.IsOpen())
m_UserRecordSet.Close();
每次执行到:m_UserRecordSet.Update();这一句时就报错了,错误是:更新或删除未涉及任何数据行。
我在数据库表也查过了,的确存在我要更新的数据行,由于需要我要给数据库的user表加了几个字段,然后在VC中也更新了绑定的变量。那问题会出在哪里呢?搞了一上午都没找到,心情极度低落,大家给看看吧。谢谢
...全文
120 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
gao_ming77 2006-09-18
  • 打赏
  • 举报
回复
是不是记录集打开方式不对?
用CRecordset::dynaset方式试试?
miker86 2006-09-18
  • 打赏
  • 举报
回复
这种方式 执行到m_UserRecordSet.Update();是正确的,但是我查了数据库我要更新的字段如用户状态(在线,离线)仍然没有更新,而有的字段(客户IP)已经更新了

4,012

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 数据库
社区管理员
  • 数据库
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧