QQ登录

只需一步,快速开始

284上位机VC MFC使用OLE DB查询数据库记录

[ 复制链接 ]

284上位机VC MFC使用OLE DB查询数据库记录

284上位机VC MFC使用OLE DB查询数据库记录

使用OLE DB查询数据记录
功能展示
使用OLE DB技术编写应用程序 时,总会涉及到数据库的查询操作,我们当前例程实现数据库记录的查询功能,效果如图,点击菜单的查询按钮,在弹出的对话框中输入要查询的名字,就可以从我们例程根目录的数据库文件的Base表格中查询对应的名字;

要点提示
使用OLE DB查询时,记得先关闭已经打开的数据集,再打开,打开过程中指定过滤字符便可;

实现功能
1.事先创建一数据源Students,再新建基于单文档的应用程序,数据表选择Basic,具体的创建过程可参考随后的视频演示;
2. 参照例程界面,添加四个编辑框ID分别为IDC_STUID,IDC_STUNAME,IDC_STUADD,IDC_STUTEL
3.修改向导为我们创建的类Cbasic的成员变量
int m_StuID;
// wchar_t m_StuName[26];
// wchar_t m_StuAdd[26];
// wchar_t m_StuTel[26];
char m_StuAdd[51];
char m_StuName[51];
char m_StuTel[51];
及BEGIN_COLUMN_MAP(CBasic)内的三行内容
// COLUMN_ENTRY_TYPE(2, DBTYPE_WSTR, m_StuName)
// COLUMN_ENTRY_TYPE(3, DBTYPE_WSTR, m_StuAdd)
// COLUMN_ENTRY_TYPE(4, DBTYPE_WSTR, m_StuTel)
COLUMN_ENTRY_TYPE(2, DBTYPE_STR, m_StuName)
COLUMN_ENTRY_TYPE(3, DBTYPE_STR, m_StuAdd)
COLUMN_ENTRY_TYPE(4, DBTYPE_STR, m_StuTel)
4.在另一记录集类CGkbc8Set中添加变量CString m_strFilter;并悠其函数Open()中一行为 // hr = CCommand<CAccessor<CBasic> >::Open(session, "SELECT * FROM Basic", &propset);
hr = CCommand<CAccessor<CBasic> >::Open(session, "SELECT * FROM Basic"+m_strFilter, &propset);
5.在View视窗类的DoDataExchange()函数中添加代码
DDX_Text(pDX,IDC_STUID,m_pSet->m_StuID
DDX_Text(pDX,IDC_STUNAME,m_pSet->m_StuName,51);
DDX_Text(pDX,IDC_STUADD,m_pSet->m_StuAdd,51);
DDX_Text(pDX,IDC_STUTEL,m_pSet->m_StuTel,51);
6.按时例程界面新建一对话框资源用于查询数据库名字信息,并关联对话框类class CFindNameDlg : public Cdialog,及编辑框变量 CString m_sName;
7.在菜单中添加<按名字查询>关联函数实现查询功能

#include "FindNameDlg.h"
void CGkbc8View::OnFineName()
{
CFindNameDlg Dlg;//打开查询对话框
if (Dlg.DoModal() == IDOK)//单击了OK按钮
{
CString newFilter;
if (!Dlg.m_sName.IsEmpty())
newFilter = " WHERE Basic.StuName = '" + Dlg.m_sName +"'";
else
newFilter = "";
if (m_pSet->m_strFilter.CompareNoCase(newFilter)) //比较原来的和新的查询字符是否相同
{
m_pSet->m_strFilter = newFilter;
m_pSet->Close();//关闭记录集然后打开
m_pSet->Open();
UpdateData(FALSE);
}
}
}

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

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

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

文件名称:284.上位机VC MFC使用OLE DB查询数据库记录.zip 
文件大小:50.32 KB  售价:11金币
下载权限: 不限 以上或 VIP会员   [购买捐助会员]   [充值积分]   有问题联系我

  

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

  

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

  

QQ联系我

微信扫扫联系我

  

  

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

  

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

  

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




回复

使用道具 举报

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