龙盟编程博客 | 无障碍搜索 | 云盘搜索神器
快速搜索
主页 > 软件开发 > VC开发 >

VC中利用ADO共同实现数据库的操作(4)

时间:2009-12-30 15:42来源:未知 作者:admin 点击:
分享到:
第十五步:添加菜单项"设置ID为索引",并添加相应的消息处理函数,然后添加代码如下: void CTestadoView::OnSetIdIndex() { _variant_t RecordsAffected; m_pConnection-Exe

  第十五步:添加菜单项"设置ID为索引",并添加相应的消息处理函数,然后添加代码如下:

void CTestadoView::OnSetIdIndex()
{
_variant_t RecordsAffected;
m_pConnection->Execute("CREATE UNIQUE INDEX id ON new(ID)",&RecordsAffected,adCmdText);
}

  运行程序,执行菜单当中的命令"设置ID为索引",我们可以发现数据库中ID被设置为索引。

  第十六步:添加菜单项"数据汇总"、"old字段的总和"、"old字段的均值"、"old的最小值"、"old字段的最大值",并添加相应的消息处理函数,然后添加代码如下:

void CTestadoView::OnOldMax()
{
_RecordsetPtr m_pRecordset;
_variant_t RecordsAffected;
m_pRecordset =m_pConnection->Execute("select MAX(old) from new",&RecordsAffected,adCmdText);
_variant_t vIndex = (long)0;
_variant_t vCount = m_pRecordset->GetCollect(vIndex);
///取得第一个字段的值放入vCount变量
m_pRecordset->Close();///关闭记录集
m_pRecordset.Release();
CString Message;
Message.Format("最大值是%d",vCount.lVal);
AfxMessageBox(Message);
}
void CTestadoView::OnOldMin()
{
_RecordsetPtr m_pRecordset;
_variant_t RecordsAffected;
m_pRecordset =m_pConnection->Execute("select MIN(old) from new",&RecordsAffected,adCmdText);
_variant_t vIndex = (long)0;
_variant_t vCount = m_pRecordset->GetCollect(vIndex);
///取得第一个字段的值放入vCount变量
m_pRecordset->Close();///关闭记录集
m_pRecordset.Release();
CString Message;
Message.Format("最小值是%d",vCount.lVal);
AfxMessageBox(Message);
}

void CTestadoView::OnOldTotal()
{
_RecordsetPtr m_pRecordset;
_variant_t RecordsAffected;
m_pRecordset =m_pConnection->Execute("select SUM(old) from new",&RecordsAffected,adCmdText);
_variant_t vIndex = (long)0;
_variant_t vCount = m_pRecordset->GetCollect(vIndex);
///取得第一个字段的值放入vCount变量
m_pRecordset->Close();///关闭记录集
m_pRecordset.Release();
CString Message;
Message.Format("总和是%d",(long)vCount);
AfxMessageBox(Message);
}

void CTestadoView::OnOldAverage()
{
_RecordsetPtr m_pRecordset;
_variant_t RecordsAffected;
m_pRecordset =m_pConnection->Execute("select AVG(old) from new",&RecordsAffected,adCmdText);
_variant_t vIndex = (long)0;
_variant_t vCount = m_pRecordset->GetCollect(vIndex);
///取得第一个字段的值放入vCount变量
m_pRecordset->Close();///关闭记录集
m_pRecordset.Release();
CString Message;
Message.Format("平均值是%d",(long)vCount);
AfxMessageBox(Message);
}}

  运行程序,执行菜单当中的汇总命令,我们可以得到相关的汇总信息。

精彩图集

赞助商链接