QQ登录

只需一步,快速开始

297上位机VC MFC使用ADO设置记录集索引

[ 复制链接 ]

297上位机VC MFC使用ADO设置记录集索引

297上位机VC MFC使用ADO设置记录集索引

使用ADO设置记录集索引
功能展示
ADO数据库程序中,给一个数据库管理系统设置记录的索引,可以大大回忆检索数据的速度,进而提高数据库管理的工作效率,我们当前例程实现设置数据库记录集索引的功能,例程运行会初始化连接根目录的数据库文件,点击<查看表字段名>会显示出表new中全部字段名,点击<选中字段设为索引>可以设置字段为索引,要注意的是相同字段仅能设置的索引名不能重复,也就是例程的设置按钮不能点击两次;

要点提示
设置数据库记录集的索引,得在所有域值中得到一个独一无二的值,然后才能设置为索引,
将字段名设置为索引的语句为CREATE UNIQUE INDEX IndexName ON TableName(FieldName)

实现功能
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; _RecordsetPtr m_pRecordset;并初始化
m_pConnection.CreateInstance(__uuidof(Connection));
try
{
m_pConnection->Open("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=test.mdb","","",adModeUnknown);
}
catch(_com_error e)
{
AfxMessageBox("数据库连接失败!");
}
m_pRecordset.CreateInstance(__uuidof(Recordset));

5.按照例程界面,添加一列表框IDC_LIST1,两按钮按钮<查看表字段名><选中字段设为索引>并关联函数
void CGkbc8Dlg::OnLook()
{
CListBox *pListBox = (CListBox *)GetDlgItem(IDC_LIST1);
pListBox->ResetContent();


CString strColName;
BSTR bstrColName;
long ColCount,i;
HRESULT hr;
Fields * fields = NULL;

m_pRecordset->Open("SELECT * FROM new", m_pConnection.GetInterfacePtr(), adOpenDynamic, adLockOptimistic, adCmdText);
hr = m_pRecordset->get_Fields (&fields);
if(SUCCEEDED(hr))
fields->get_Count(&ColCount);//得到记录集的字段集合中的字段的总个数   

LPCTSTR nameField;
for(i=0;i<ColCount;i++)
{
fields->Item->get_Name(&bstrColName); //得到记录集中的字段名
strColName=bstrColName;
nameField = strColName;
pListBox->AddString(nameField);
}
//释放指针
if(SUCCEEDED(hr))
fields->Release();
m_pRecordset->Close();
}
void CGkbc8Dlg::OnSet()
{
CListBox *pListBox = (CListBox *)GetDlgItem(IDC_LIST1);
int index=pListBox->GetCurSel();
if(index==LB_ERR)//判断是否选择了项目
{
MessageBox("没有选择索引项!");
return;
}
CString str;
pListBox->GetText(index,str);//取得选择项目
_variant_t RecordsAffected;
//设置索引
if(str=="ID")
m_pConnection->Execute("CREATE UNIQUE INDEX id ON new(ID)",&RecordsAffected,adCmdText);
if(str=="Name")
m_pConnection->Execute("CREATE UNIQUE INDEX name ON new(Name)",&RecordsAffected,adCmdText);
AfxMessageBox("设置索引成功!");
}

我们来演示功能实现过程
请点击此处下载

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

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

文件名称:297.上位机VC MFC使用ADO设置记录集索引.zip 
文件大小:185.54 KB  售价:11金币
下载权限: 不限 以上或 VIP会员   [购买捐助会员]   [充值积分]   有问题联系我

  

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

  

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

  

QQ联系我

微信扫扫联系我

  

  

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

  

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

  

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




回复

使用道具 举报

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