MFC工控项目实例三十五读取数据库数据

点击按钮打开文件夹中的数据文件生成曲线

相关代码

cpp 复制代码
void CSEAL_PRESSUREDlg::OnTesReport() 
{
 	
CFileDialog dlgOpen(TRUE/*TRUE打开,FALSE保存*/,
        0,
        0,
        OFN_NOCHANGEDIR|OFN_FILEMUSTEXIST,
        "All Files(mdb.*)|*.*||",//文件过滤器
        NULL);
  
CString  mdb_1, mdb_2;
    dlgOpen.m_ofn.lpstrInitialDir =theApp.m_DataPath;
    if(IDOK == dlgOpen.DoModal())
	{
             mdb_1=dlgOpen.GetPathName();
             mdb_2=dlgOpen.GetFileTitle();    
			 UpdateData(true); 
 _variant_t RecordsAffected; 
    //链接数据库
       try
	   {
		//创建连接对象实例
		m_pConnection.CreateInstance("ADODB.Connection");	
	CString strConnect="DRIVER={Microsoft Access Driver (*.mdb)};\
			uid=;pwd=;DBQ="+mdb_1;	
		m_pConnection->Open((_bstr_t)strConnect,"","",adModeUnknown);  
	   }	
          catch(...)
		  {
		MessageBox("连接数据库失败");
		return;
		  }    
            try
			{
       m_pRecordset.CreateInstance("ADODB.Recordset"); //为Recordset对象创建实例
       _bstr_t strCmd = "SELECT * FROM  "+mdb_2;
       m_pRecordset = m_pConnection->Execute(strCmd, &RecordsAffected, adCmdText);
			}
              catch(_com_error &e)
			  {
       AfxMessageBox(e.Description());
			  }
			   m_ctrlPlot_1.RemoveAllChannels();
               m_ctrlPlot_1.AddChannel();
                while(!m_pRecordset->adoEOF)
				{	
	 	 double X=(double)atof((char*)(_bstr_t)m_pRecordset->GetCollect("X值"));
		 double Y=(double)atof((char*)(_bstr_t)m_pRecordset->GetCollect("Y值"));
	 	 m_ctrlPlot_1.GetChannel(0).AddXY(X/10, Y);	
		m_pRecordset->MoveNext();	//将记录集指针移动到下一条记
				}
	}	
}
相关推荐
Want5952 分钟前
C/C++跳动的爱心
c语言·开发语言·c++
laimaxgg8 分钟前
Qt常用控件之数字显示控件QLCDNumber
开发语言·c++·qt·qt5·qt6.3
蓝天扶光12 分钟前
c++贪心系列
开发语言·c++
Alidme40 分钟前
cs106x-lecture14(Autumn 2017)-SPL实现
c++·学习·算法·codestepbystep·cs106x
小王努力学编程41 分钟前
【算法与数据结构】单调队列
数据结构·c++·学习·算法·leetcode
RainbowSea1 小时前
9-1. MySQL 性能分析工具的使用——last\_query\_cost,慢查询日志
数据库·sql·mysql
Sui_Network1 小时前
Sui 如何支持各种类型的 Web3 游戏
大数据·数据库·人工智能·游戏·web3·区块链
ZKNOW甄知科技2 小时前
IT服务运营管理体系的常用方法论与实践指南(上)
大数据·数据库·人工智能
Zfox_2 小时前
【QT】信号与槽 & 窗口坐标
开发语言·c++·qt·qt5
黄雪超3 小时前
深入HBase——核心组件
数据结构·数据库·hbase