用CFile来读取SDF数据库文件的数据,几乎是不可能的。
如果你确定SDF是数据库文件,那么应该是SQL
SERVER的PDA版本SQLCE的数据文件,这种文件的格式非常复杂,其中包含了数据表、视图、索引、触发器、存储过程,很多信息甚至是加密格式的,这是一个非公开的专有数据格式,必须用指定的软件或者开发商(微软)提供的数据库链接组件来打开。
而CFile,只是以二进制和文本方式打开文件,无法自行处理这些复杂结构。
创建一个名为查找的对话框IDD_Search
void CODBCView::DoSearch(CString col){
CSearchDlg dlg;
int result=dlgDoModal();
if(result==IDOK){
CString str=col+"='"+dlgm_Edit_Search+"'";/col为日期那列的列名,m_Edit_Search是与要输入日期的编辑框关联的变量。/
m_pSet->Close();
m_pSet->m_strFilter=str;
m_pSet->Open();
int recCount=m_pSet->GetRecordCount();
if(recCount==0){
MessageBox("No matching records");
m_pSet->Close();
m_pSet->m_strFilter;//将过滤结果给过滤器
m_pSet->Open();
}
UpdataData(FALSE);
}
}
SQL模糊查询,使用like比较字,加上SQL里的通配符,请参考以下:
1、LIKE'Mc%' 将搜索以字母 Mc 开头的所有字符串(如 McBadden)。
2、LIKE'%inger' 将搜索以字母 inger 结尾的所有字符串(如 Ringer、Stringer)。
3、LIKE'%en%' 将搜索在任何位置包含字母 en 的所有字符串(如 Bennet、Green、McBadden)。
4、LIKE'_heryl' 将搜索以字母 heryl 结尾的所有六个字母的名称(如 Cheryl、Sheryl)。
5、LIKE'[CK]ars[eo]n' 将搜索下列字符串:Carsen、Karsen、Carson 和 Karson(如 Carson)。
6、LIKE'[M-Z]inger' 将搜索以字符串 inger 结尾、以从 M 到 Z 的任何单个字母开头的所有名称(如 Ringer)。
7、LIKE'M[^c]%' 将搜索以字母 M 开头,并且第二个字母不是 c 的所有名称(如MacFeather)。
有个例子你可以参考一下
sql = "select from zipcode where (address like'%" & zipcode_key & "%') or (city like'%" & zipcode_key & "%') or (province like'%" & zipcode_key & "%') order by province,city,address"
以上就是关于vc中cfile如何读取sdf数据文件中的数据全部的内容,包括:vc中cfile如何读取sdf数据文件中的数据、VC中 如何利用ODBC在Access数据库里查询日期/时间类型的字段、VC++中如何对数据库中多表中的所有字段模糊查询等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)