_RecordsetPtr ACCESS 数据插入

chenbaohai 2011-09-06 12:30:43
_Connection已经连接好了的,用_RecordsetPtr修改字段的话也是可以的,但就是不能在空的表格中插入数据。空表名是收费表,字段有居民号,车辆号,入库时间,出库时间,办理人。插入数据代码如下:

try
{
CString sql;

sql = "SELECT * FROM 收费表";
m_pRecordset.CreateInstance(__uuidof(Recordset));
m_pRecordset->Open((_variant_t)sql,((CCar_costApp*)AfxGetApp())->m_pConnection.GetInterfacePtr(),
adOpenStatic,adLockOptimistic,adCmdText);

// m_pRecordset->MoveLast();

m_pRecordset->AddNew();

m_pRecordset->PutCollect("居民号",_variant_t(m_dep_id));

m_pRecordset->PutCollect("车辆号",_variant_t(m_car_id));

m_pRecordset->PutCollect("入库时间",_variant_t(m_start_time));

m_pRecordset->PutCollect("办理人",_variant_t(m_use_id));

m_pRecordset->MoveNext();

m_pRecordset->Update();

AfxMessageBox("修改成功!");
m_pRecordset->Close();
}


然后运行之后就会提示unknown error 0x800AOCC1,不知道是什么地方有问题,希望解决过类似问题的人给点帮助。
...全文
96 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
  • 打赏
  • 举报
回复
这个问题您解决了么?我也遇到了相同的问题,不知道是为什么
buyong 2011-09-06
  • 打赏
  • 举报
回复
用try...catch捕获错误
buyong 2011-09-06
  • 打赏
  • 举报
回复
1、用sql语句插入记录。insert into 收费表(.....) values(....)
2、m_pRecordset->AddNew();

m_pRecordset->PutCollect("居民号",_variant_t(m_dep_id));

m_pRecordset->PutCollect("车辆号",_variant_t(m_car_id));

m_pRecordset->PutCollect("入库时间",_variant_t(m_start_time));

m_pRecordset->PutCollect("办理人",_variant_t(m_use_id));

//m_pRecordset->MoveNext(); //这句注释掉

m_pRecordset->Update();
chenbaohai 2011-09-06
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 buyong 的回复:]
1、用sql语句插入记录。insert into 收费表(.....) values(....)
2、m_pRecordset->AddNew();

m_pRecordset->PutCollect("居民号",_variant_t(m_dep_id));

m_pRecordset->PutCollect("车辆号",_variant_t(m_car_id));

m……
[/Quote]

try
{
CString sql;

sql = "insert into 收费表 values(_variant_t(m_dep_id),_variant_t(m_car_id),_variant_t(m_car_id),null,null,_variant_t(m_use_id))";
m_pRecordset.CreateInstance(__uuidof(Recordset));
m_pRecordset->Open((_variant_t)sql,((CCar_costApp*)AfxGetApp())->m_pConnection.GetInterfacePtr(),
adOpenStatic,adLockOptimistic,adCmdText);

// m_pRecordset->MoveLast();

m_pRecordset->AddNew();

m_pRecordset->PutCollect("居民号",_variant_t(m_dep_id));

m_pRecordset->PutCollect("车辆号",_variant_t(m_car_id));

m_pRecordset->PutCollect("入库时间",_variant_t(m_start_time));

m_pRecordset->PutCollect("办理人",_variant_t(m_use_id));

// m_pRecordset->MoveNext();

m_pRecordset->Update();

AfxMessageBox("修改成功!");
m_pRecordset->Close();
}
catch(_com_error& e)
{
AfxMessageBox(e.ErrorMessage());
return;
}

这样写还是不对啊

4,011

社区成员

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

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