CStudentSet studentset;
studentset.Open();
studentset.MoveFirst();
UpdateData(TRUE);
CString a1,a2,a3,a;
if(m_Sname=="")
a1="1";
else
a1.Format("Sname='%s'",m_Sname);
if(m_Ssex=="")
a2="1";
else
a2.Format("Ssex='%s'",m_Ssex); if(m_college=="")
a3="1";
else
a3.Format("Scollege='%s'",m_college);
studentset.m_strFilter.Format("%s and %s and %s",a1,a2,a3);
studentset.Requery();
数据源是SQL时老是说在AND附近有语法错误哦
可是在ACCESS 用就不会哦
什么原因阿?
在线等
studentset.Open();
studentset.MoveFirst();
UpdateData(TRUE);
CString a1,a2,a3,a;
if(m_Sname=="")
a1="1";
else
a1.Format("Sname='%s'",m_Sname);
if(m_Ssex=="")
a2="1";
else
a2.Format("Ssex='%s'",m_Ssex); if(m_college=="")
a3="1";
else
a3.Format("Scollege='%s'",m_college);
studentset.m_strFilter.Format("%s and %s and %s",a1,a2,a3);
studentset.Requery();
数据源是SQL时老是说在AND附近有语法错误哦
可是在ACCESS 用就不会哦
什么原因阿?
在线等
解决方案 »
- MFC PNG 对话框问题
- 实现文件内容的分类归组
- 请教完全模式[超大量客户端]的socket编程实现
- 如何把繁体中文的文本文件转换为unicode编码?
- 关于透明背景的问题,真的是没有办法了,恳请大哥们帮忙解决!
- 关于MFC中消息处理的问题
- 初学C++,不会windows编程,求个小程序,用于学习,谢谢
- 飞不起来的笨鸟 Cline(营营) aXu(小鱼儿) rushing(勇敢的心) andy_lau()来拿分啊
- 为什么我的VC++找不到afxres.h?
- 我想在dll中向exe传参数。该怎么写代码呢?
- 一个很关于菜的问题
- 为什么从pos机过来的数据里0x00会接收成0x20 ???? 急!! 请大家帮忙!!
db.open(....);
crecordset rs(&db);
cstring ssql;
ssql.format("SELECT * from table where colu1='%s'",a1);
rs.open(AFX_DB_USE_DEFAULT_TYPE,ssql);
还是在AND附近有语法错误
是不是那个1的问题?
当控件变量为空时数据过滤1怎么理解阿?
CString strTempSQL = "";
if(!m_Edit1.IsEmpty()) //如果控件值不为空
{
strTempSQL.Format("%s and 字段1 = '%s'",strSQL,m_Edit1);
//上面等同于strSQL = strSQL + " and 字段1 = " + m_Edit1
//不建议这么写,因为其它类型的不容易控制
strSQL = strTempSQL;
}
if(!m_Edit2.IsEmpty()) //如果控件值不为空
{
strTempSQL.Format("%s and 字段2 = '%s'",strSQL,m_Edit2);
strSQL = strTempSQL;
} //.................................;
//直到你所有得空件都判断完毕
//把左边得" and"删除
strSQL = strSQL.Right(strSQL.GetLength() - strlen(" And"));
studentset.m_strFilter.Format("%s",strSQL);
假设你的三个字段名称分别为Sname、Ssex、college,则
studentset.m_strFilter.Format("Sname = '%s' and Ssex = '%s' and college = '%s'",a1,a2,a3);
看错了,
看你的程序,好像你的Ssex字段不是字符类型的,如果是数字类型的话,应该是
studentset.m_strFilter.Format("Sname = '%s' and Ssex = %d and Scollege = '%s'",m_Sname,m_Ssex,m_college);