MFC控件之list control(续)---ado

23 篇文章 0 订阅
7 篇文章 0 订阅

mfc通过ado连接数据库,然后用list control 显示,且对数据要进行修改、增加、删除等操作
1、在list control中应该增加事件:LVN_ITEMCHANGED,在事件响应函数中增加对应数据库智能指针移动代码:
POSITION pos = m_testList.GetFirstSelectedItemPosition();
int i = m_testList.GetNextSelectedItem(pos);
if (i < 0)
{
return;
}
try
{
m_pRecordset->MoveFirst();
m_pRecordset->Move(long(i));
//m_testList.SetCheck(i);
}
catch(_com_error e)
{
AfxMessageBox(e.Description());
}
这样的话,点击list control中的某一行,数据库中也对应移到改行

2、插入数据
                m_pRecordset->AddNew();
m_pRecordset->PutCollect("ParamType",_variant_t(a_type));
m_pRecordset->PutCollect("ParamName",_variant_t(a_param));
m_pRecordset->PutCollect("ParamValue",_variant_t(a_value));
m_pRecordset->Update();

3、更新或修改数据
m_pRecordset->PutCollect("ParamType",_variant_t(a_type));
m_pRecordset->PutCollect("ParamName",_variant_t(a_param));
m_pRecordset->PutCollect("ParamValue",_variant_t(a_value));
m_pRecordset->Update();

4、删除数据
  m_pRecordset->Delete(adAffectCurrent);
  m_pRecordset->Update();

5、显示数据
var = m_pRecordset->GetCollect("ParamType");
if (var.vt != VT_NULL)
{
configType = (LPCSTR)_bstr_t(var);
}
m_testList.InsertItem(i,configType,0);

注:创建连接的时候,m_pConnection.CreateInstance(__uuidof(Connection));默认写的时候是
m_pConnection->CreateInstance(__uuidof(Connection));此时编译是通不过的,必须把“->”改为“.”才行

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值