QQ登录

只需一步,快速开始

298上位机VC MFC使用ADO计算域最大最小平均值

[ 复制链接 ]

298上位机VC MFC使用ADO计算域最大最小平均值

298上位机VC MFC使用ADO计算域最大最小平均值

ADO计算域最大最小平均值
功能展示
ADO数据库程序中,求极值其实就是对记录中某个字段值的范围进行界定,另外求平均值也是很常用的数据处理过程,我们当前例程就实现指定记录集一字段中最大,最小,平均值的获取,效果如图,程序运行会初始化连接根目录数据库文件,点击界面的三个按钮就会分别获取我们想要的最大,大小,平均值;

要点提示
求平均值的SQL语句为
select AVG(FieldName) from TableName where Condition
求最大值的SQL语句为
select MAX(FieldName) from TableName
求最小值的SQL语句为
select MIN(FieldName) from TableName

实现功能
1.新建基于对话框的应用程序
2.在App类的InitInstance()函数中添加代码AfxOleInit();//初始化COM,创建ADO连接等操作
3.在stdafx.h中加入ADO支持库
#import “c:\program files\common files\system\ado\msado15.dll” no_namespace rename (“EOF”, “adoEOF”) 及#include "icrsint.h"//IADORecordBinding 头文件
4.主对话框中添加变量public:
_ConnectionPtr m_pConnection; 并初始化
HRESULT hr;
try
{
hr =m_pConnection.CreateInstance("ADODB.Connection");//创建Connection对象
if(SUCCEEDED(hr))
{
hr=m_pConnection->Open("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=stuinf.mdb","","",adModeUnknown);
}
}
catch(_com_error e)///捕捉异常
{
CString errormessage;
errormessage.Format("连接数据库失败!\r\n错误信息:%s",e.ErrorMessage());
AfxMessageBox(errormessage);///显示错误信息
}
5.按照例程界面,添加三编辑框,IDC_EDIT1,IDC_EDIT2,IDC_EDIT3,三按钮<年龄域最小值查找><年龄域最大值查找><good学生年龄均值>关联按钮的点击函数
void CGkbc8Dlg::OnFindmin()
{
_RecordsetPtr m_pRecordset;
_variant_t RecordsAffected;
m_pRecordset =m_pConnection->Execute("select MIN(age) from course",&RecordsAffected,adCmdText);
_variant_t vIndex = (long)0;
_variant_t vCount = m_pRecordset->GetCollect(vIndex);

m_pRecordset->Close();
m_pRecordset.Release();
SetDlgItemInt(IDC_EDIT1,vCount.lVal);
}

void CGkbc8Dlg::OnFindmax()
{
_RecordsetPtr m_pRecordset;
_variant_t RecordsAffected;
m_pRecordset =m_pConnection->Execute("select MAX(age) from course",&RecordsAffected,adCmdText);
_variant_t vIndex = (long)0;
_variant_t vCount = m_pRecordset->GetCollect(vIndex);
m_pRecordset->Close();//关闭记录集
m_pRecordset.Release();

SetDlgItemInt(IDC_EDIT2,vCount.lVal);
}

void CGkbc8Dlg::OnAverage()
{
_RecordsetPtr m_pRecordset;
_variant_t RecordsAffected;
m_pRecordset=m_pConnection->Execute("select AVG(age) from course where comment='good'",&RecordsAffected,adCmdText);
_variant_t vIndex = (long)0;
_variant_t vCount = m_pRecordset->GetCollect(vIndex);
m_pRecordset->Close();
m_pRecordset.Release();

SetDlgItemInt(IDC_EDIT3,(long)vCount);
}
我们来演示功能实现过程
请点击此处下载

请先注册会员后在进行下载

已注册会员,请先登录后下载

文件名称:298.上位机VC MFC使用ADO计算域最大最小平均值.zip 
文件大小:186.76 KB  售价:11金币
下载权限: 不限 以上或 VIP会员   [购买捐助会员]   [充值积分]   有问题联系我

  

如果您认可,可联系功能定制!

  

如果您着急,充值会员可直接联系发您资料!

  

QQ联系我

微信扫扫联系我

  

  

您的支持是我们创作的动力!  

  

您可花点闲钱积分自助任意充值

  

成为VIP会员 全站资源任意下载永久更新!




回复

使用道具 举报

快速回复 返回列表 客服中心 搜索