ADO打开数据库出错, 老是出现Runtime Error!
UlTMa 2006-11-20 05:21:08 我在 StdAfx.h中加入如下一行(语句在一行)
#import "C:\Program Files\Common Files\System\ado\msado15.dll" no_namespace rename("EOF", "adoEOF")
一步一步做下来, 运行时总是提示Runtime Error,程序就关掉了
下面是在对话框的OnInitDialog()函数中的数据库连接代码. 数据库为Class,用户DSN,已建立, 用户和密码为空
m_pConnection.CreateInstance(__uuidof(Connection));
// 好像在这一步就出错了
// 换成这样也不行 m_pConnection->Open("DSN=Class", "", "", -1);
m_pConnection->Open("DSN=Class;UID="";PID=""", "", "", -1);
m_pRecordset.CreateInstance(__uuidof(Recordset));
m_pRecordset->Open("SELECT * FROM list",
m_pConnection.GetInterfacePtr(),
adOpenDynamic, adLockOptimistic, adCmdText);
_variant_t varName, varID;
try
{
m_pRecordset->MoveFirst();
varName = m_pRecordset->GetCollect("名字");
varID = m_pRecordset->GetCollect("序号");
if (varName.vt != VT_NULL) m_csResvName = (char *)_bstr_t(varName);
if (varID.vt != VT_NULL) m_lResvID = varID.lVal;
}
catch (_com_error *e)
{
CString Error;
Error.Format("Open database error: %s", e->ErrorMessage());
AfxMessageBox(Error);
}
大家帮忙看一下 啊