这是一个访问多个表的程序。
运行时出现“Runtime Error"错误,我测试过,程序运行到开始操作数据库就出现问题。数据类型什么的我都看过了,没什么问题。这是为什么?!!
       UpdateData();
VARIANT var;
CString nUseid,tempUseid,tempPopedomid,nPopedomKindid;
CString nPopedomid[100];
int i=0,n1=0,n2=0,n3=0,n4=0,n7=0,n9=0;
BOOL nFlag=FALSE;
CString strName,strPopedomName;
char *strPopedomName1[20],*strPopedomName2[40],*strPopedomName3[5],*strPopedomName4[2],
*strPopedomName7[5],*strPopedomName9[5];
char *strPopdomKindName[6];//////////////////////////////////////
//操作数据库T_USER
//////////////////////////////////////
m_pConnection.CreateInstance(__uuidof(Connection));
m_pRecordset.CreateInstance(__uuidof(Recordset));
try
{
m_pConnection->Open("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=T_USER.mdb","","",adModeUnknown);
}
catch(_com_error *e)
{
AfxMessageBox(e->ErrorMessage());
}
try
{
m_pRecordset->Open("SELECT * FROM T_USER",                // 查询表中所有字段
m_pConnection.GetInterfacePtr(),  // 获取库接库的IDispatch指针
adOpenDynamic,
adLockOptimistic,
adCmdText);
}
catch(_com_error *e)
{
AfxMessageBox(e->ErrorMessage());
}

try //从数据库T-USER中查找POPEDOMKINDID
{
if(!m_pRecordset->BOF)
m_pRecordset->MoveFirst();
else
{
AfxMessageBox("表类数据为空");
return;
}
while(strName!=m_sName)
{
var=m_pRecordset->GetCollect("NAME");
strName=(LPCSTR)_bstr_t(var);
var=m_pRecordset->GetCollect("USERID");
nUseid=(LPCSTR)_bstr_t(var);
m_pRecordset->MoveNext();
}
}
下面还有好多
省略