工控编程吧
标题:
257上位机VC MFC使用ODBC进行参数化查询
[打印本页]
作者:
qq263946146
时间:
2016-4-23 21:25
标题:
257上位机VC MFC使用ODBC进行参数化查询
(, 下载次数: 1)
上传
点击文件名下载附件
257上位机VC MFC使用ODBC进行参数化查询
功能展示
前面例程使用的有条件查询数据库数据功能比较麻烦,且界面不够直观,操作不是很方便,我们当前例程使用参数化查询数据的方法实现查询功能,效果如图如图,输入要查询的学号,点击执行查询,可以查找到对应学号的学生;
要点提示
例程在执行参数化查询时是以只读的形式打开记录集。
另外参变量与数据库中的参数绑定才能够实现查询功能;
例程中出现有一变量m_nParams,它是Crecordset类的一成员变量,表示绑定参数,此变量必须初始化,不然会报错;
实现功能
1.按照前面例程或当前视频中的方法,用根目录的Student.mdb创建数据源;
2.新建一个应用前面数据源的基于单文档的应用程序,具体过程可参考视频学习;
3.按程序界面,添加四编辑框,ID分别为IDC_EDIT1,IDC_EDIT2,IDC_EDIT3,IDC_EDIT4分别关联SET类中的三个变量 m_ID; m_Name; m_GradYear及一自定义变量m_nFilterID;
添加按钮<执行 查询>,关联函数
void CGkbc8View::OnFilter()
{
UpdateData(TRUE);
m_pSet->Close();//关闭记录集
m_pSet->m_strFilter="ID=?";//查询条件
m_pSet->m_FilterID=m_nFilterID;
m_pSet->Open(CRecordset::snapshot,NULL,CRecordset::readOnly);
int recCount=m_pSet->GetRecordCount();//得到记录集的条数
if (recCount==0)//检查是否为空
{
MessageBox("没有匹配的记录");
m_pSet->Close();
m_pSet->m_strFilter="";
m_pSet->Open();
}
UpdateData(FALSE);//更新对话框
}
复制代码
4.在SET类中添加 变量longm_FilterID; 且在构造函数中初始化m_FilterID=0;m_nParams=1;
另外在类的DoFieldExchange()函数中将参变量与对应列绑定, pFX->SetFieldType(CFieldExchange::param);
RFX_Long(pFX,_T("m_FilterID"),m_FilterID);
我们来演示下功能实现的整个过程
[iqiyi]http://player.video.qiyi.com/309fdb3bbe6da5c20972011d2549338f/0/0/w_19rt5rwmp9.swf-albumId=5740142209-tvId=5740142209-isPurchase=0-cnId=12[/iqiyi]
(, 下载次数: 0)
上传
点击文件名下载附件
[note]1[/note]
欢迎光临 工控编程吧 (https://www.gkbc8.com/)
Powered by Discuz! X3.4