用m_pRecordset->Open("SELECT *FROM maintable",_variant_t((IDispatch *)m_pConnection,true),adOpenStatic,adLockOptimistic,adCmdText);
操作数据库,添加,删除一切正常,就是在数据库里没有任何数据时,执行这个操作
出现类型不匹配的错误,也不可以用m_pRecordset->addnew(),调试发现
m_pRecordset是0x00000000,这是怎么回事啊?
操作数据库,添加,删除一切正常,就是在数据库里没有任何数据时,执行这个操作
出现类型不匹配的错误,也不可以用m_pRecordset->addnew(),调试发现
m_pRecordset是0x00000000,这是怎么回事啊?
解决方案 »
- VS2005,写代码没有颜色区别提醒??
- 获取播放视频窗口的图像,GetPixel有点问题,有无别的方法?
- 我用AppWizard 生成了一个single Document的exe工程怎么从我自定义的类中调用CSPC1View中的变量和函数?
- 最好的游戏制作群8672698
- VC初学者的问题请多指教.(四)
- 关于画图函数指针没有释放 ,时间积累软件运行错误问题?
- 内存释放问题
- Spin控件的响应函数OnDeltaposSpin的详细过程是怎么样的?
- 如何退出时提示保存
- 求教文件读写问题!
- 在View里设定picture control的ICON没有作用,如何做?
- mfc下窗口关闭后弹出一个对话框提示产生debug错误。
_variant_t ret;
m_pConnection->Execute("create table user(id integer,name text,old integer,birthday datetime)",&ret,adCmdText);
m_pConnection->Execute("insert into user values(1,'dwad',25,'1984/1/1')",&ret,adCmdText);
也会程序崩溃,这是为什么啊?
前面已经执行过
HRESULT hr;
try{
hr=m_pConnection.CreateInstance("ADODB.Connection");
if(SUCCEEDED(hr))
{
hr=m_pConnection->Open("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=db1.mdb","","",adModeUnknown);
}
}
catch(_com_error &e)
{
CString errmsg;
errmsg.Format("Failed to connect database\r\n Error Message:%s",e.ErrorMessage());
AfxMessageBox(errmsg);
}
m_pRecordset.CreateInstance("ADODB.Recordset");
着一段没有问题的.
HRESULT hr=CoInitialize(NULL);
没有
ExitInstance里面
::CoUnInitiallize();m_pConnection.CreateInstance("ADODB.Connection");
可能这里都没有创建出来
m_pConnection.CreateInstance(__uuidof(Connection));
m_pRecordset.CreateInstance(__uuidof(Recordset));
struct _Recordset * _result = 0;
HRESULT _hr = raw_Execute(CommandText, RecordsAffected, Options, &_result);
if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this));
return _RecordsetPtr(_result, false);
}
错误出在这个地方,_result=0x00000000,
这是怎么回事啊?