打开Access数据库表,插入第一条记录执行Update()时出错,该怎么处理
打开Access数据库表,插入第一条记录执行Update()时出错
代码如下,在界面的一个 "插入 "按钮中写入如下代码.
执行Update()时,提示 "0x5f477959 "指令引用的 "0x00000014 "内存,改内存不能为 "read ".
单击 "确定 "后,直接退出程序. 但重新启动软件,发现此条记录已经写入数据库中.
请各位指点!谢谢!
CNetadminSet objSMS;
if ( objSMS.IsOpen() )
{
objSMS.Close();
}
if ( objSMS.Open( CRecordset::dynaset, "tbRecv ", CRecordset::none ) == FALSE )
{
AfxMessageBox( "打开tbRecv表格失败! ");
return;
}
objSMS.AddNew();
objSMS.m_intNumber = 1;
objSMS.m_strCallingNo = "111 ";
objSMS.m_strName = " ";
objSMS.m_strComments = " ";
objSMS.m_strDate = CTime::GetCurrentTime(); //此变量数据库中设置为日期/时间类型
objSMS.m_strCalledNo = "222 ";
objSMS.m_strSMS = "test ";
if ( !objSMS.Update() )
{
AfxMessageBox( "更新数据库失败! ");
objSMS.Close();
return;
}
------解决方案--------------------
看看数据库是否是只读的。
------解决方案--------------------
CNetadminSet是什么类
代码如下,在界面的一个 "插入 "按钮中写入如下代码.
执行Update()时,提示 "0x5f477959 "指令引用的 "0x00000014 "内存,改内存不能为 "read ".
单击 "确定 "后,直接退出程序. 但重新启动软件,发现此条记录已经写入数据库中.
请各位指点!谢谢!
CNetadminSet objSMS;
if ( objSMS.IsOpen() )
{
objSMS.Close();
}
if ( objSMS.Open( CRecordset::dynaset, "tbRecv ", CRecordset::none ) == FALSE )
{
AfxMessageBox( "打开tbRecv表格失败! ");
return;
}
objSMS.AddNew();
objSMS.m_intNumber = 1;
objSMS.m_strCallingNo = "111 ";
objSMS.m_strName = " ";
objSMS.m_strComments = " ";
objSMS.m_strDate = CTime::GetCurrentTime(); //此变量数据库中设置为日期/时间类型
objSMS.m_strCalledNo = "222 ";
objSMS.m_strSMS = "test ";
if ( !objSMS.Update() )
{
AfxMessageBox( "更新数据库失败! ");
objSMS.Close();
return;
}
------解决方案--------------------
看看数据库是否是只读的。
------解决方案--------------------
CNetadminSet是什么类