IHAVENOCODE 2021-04-25 13:56 采纳率: 0%
浏览 83

MFC与SQL 对话框报错abort() has been called

能够弹出对话框,勾选相应选项后SQL语句生成也正确,但是到把执行完SQL语句的结果传回MFC里的list control里就报标题那个错误了

这是代码,i_count代表行,j_count代表列

//SQL语句传到SQL里查询,再把查到的数据集传回list control输出
	m_pRecordset.CreateInstance("ADODB.m_pRecordset");
	m_pRecordset = m_pConnection->Execute(_bstr_t(SQL), NULL, adCmdText);//将查询数据导入m_pRecordset数据容器,将记录集获取的数据一一与输入的数据进行比较
	int i_count = 0;
	while (!m_pRecordset->adoEOF) {
		_variant_t temp1 = (_bstr_t)m_pRecordset->GetCollect("Sno");
		_variant_t temp2 = (_bstr_t)m_pRecordset->GetCollect("Sname");
		_variant_t temp3 = (_bstr_t)m_pRecordset->GetCollect("Ssex");
		_variant_t temp4 = (_bstr_t)m_pRecordset->GetCollect("Sdept");
		_variant_t temp5 = (_bstr_t)m_pRecordset->GetCollect("Sage");
		_variant_t temp6 = (_bstr_t)m_pRecordset->GetCollect("Cname");
		_variant_t temp7 = (_bstr_t)m_pRecordset->GetCollect("Pcname");
		_variant_t temp8 = (_bstr_t)m_pRecordset->GetCollect("Credit");
		_variant_t temp9 = (_bstr_t)m_pRecordset->GetCollect("Grade");

		int j_count = 0;
		Result.InsertItem(i_count, _T(""));
		if (CKSno.GetState() == 1)
			Result.SetItemText(i_count, j_count++, (LPCTSTR)temp1.llVal); 
		if (CKSname.GetState() == 1)
			Result.SetItemText(i_count, j_count++, (LPCTSTR)temp2.llVal);
		if (CKSsex.GetState() == 1)
			Result.SetItemText(i_count, j_count++, (LPCTSTR)temp3.llVal);
		if (CKSdept.GetState() == 1)
			Result.SetItemText(i_count, j_count++, (LPCTSTR)temp4.llVal);
		if (CKSage.GetState() == 1)
			Result.SetItemText(i_count, j_count++, (LPCTSTR)temp5.llVal);
		if (CKCname.GetState() == 1)
			Result.SetItemText(i_count, j_count++, (LPCTSTR)temp6.llVal);
		if (CKPcname.GetState() == 1)
			Result.SetItemText(i_count, j_count++, (LPCTSTR)temp7.llVal);
		if (CKCredit.GetState() == 1)
			Result.SetItemText(i_count, j_count++, (LPCTSTR)temp8.llVal);
		if (CKGrade.GetState() == 1)
			Result.SetItemText(i_count, j_count++, (LPCTSTR)temp9.llVal);
		
		i_count++;
		m_pRecordset->MoveNext();
	}
	m_pRecordset->Close();//关闭记录集
  • 写回答

3条回答 默认 最新

  • 关注

    不能在循环语句里面调用SetItemText设置值吧。应该是在循环语句内部生成一个类似列表的数组,循环结束后吧值设置给控件。

    评论

报告相同问题?

悬赏问题

  • ¥20 limma多组间分析最终p值只有一个
  • ¥15 nopCommerce开发问题
  • ¥15 torch.multiprocessing.spawn.ProcessExitedException: process 1 terminated with signal SIGKILL
  • ¥15 QuartusⅡ15.0编译项目后,output_files中的.jdi、.sld、.sof不更新怎么解决
  • ¥15 pycharm输出和导师的一样,但是标红
  • ¥15 想问问富文本拿到的html怎么转成docx的
  • ¥15 我看了您的文章,遇到了个问题。
  • ¥15 GitHubssh虚拟机连接不上
  • ¥15 装完kali之后下载Google输入法 重启电脑后出现以下状况 且退不出去 桌面消失 反复重启没用
  • ¥15 ESP-IDP-BLE配网连接wifi