我按照MFC appWizard一步步加入数据源,然后建了一个按钮,按钮代码如下:
void CAttack2View::OnTagAdd()
{
m_pSet-> AddNew();
m_pSet-> m_TagID2=m_Tagid;
m_pSet-> m_Data=m_TagData;
m_pSet-> Update();
m_pSet-> MoveLast();
UpdateData();
}
其中的变量都在前面定义好了,
如此运行的结果是 "记录集是只读 "
但是,当我加入语句m_pSet-> Open(AFX_DB_USE_DEFAULT_TYPE,NULL);提示为“无效的游标”
怎么会这样呢?先前有人问过这个问题,大家给的答案很杂啦,而且我不知道怎么实现的说~~~(原谅初学者) 数据源是access的
能给个简便的解决办法吗?
m_pSet-> Open(AFX_DB_USE_DEFAULT_TYPE,NULL);
这句有问题。
if(m_pSet-> Open(AFX_DB_USE_DEFAULT_TYPE, "select * from tokui "))
{
m_pSet.AddNew();
m_pSet-> m_TagID2=m_Tagid;
m_pSet-> m_Data=m_TagData;
m_pSet.Update();
}
m_pSet.Close();
你在试试。
UpdateData()
写在代码前面,数据源建立的对么?
我看别人的帖子里说MFC好像不加where语句就会有这样的问题
我干脆直接executeSQL就没有问题了
怪死了
rs.open(CRecordset::dynaset,...);
表中必须有主键,否则不能插入,不要问我为什么,我也不知道微软为什么比较变态。