void CPERSONNEL::OnButton2() //实现数据查找
{
UpdateData(TRUE);
CString m_realfield,str;
int id = m_field.GetCurSel();
if(id >= 0)
{
if(str.Compare("员工号")==0)//
{
p_query.Format("select * from personnel where emp_no=1"); RefreshData();//更新函数
}
}
}
按上述代码执行查找,提示打不开数据库。
而如下代码却可以:
void CPERSONNEL::OnButton2()
{
UpdateData(TRUE);
CString m_realfield,str;
int id = m_field.GetCurSel();
if(id >= 0)
{
if(str.Compare("员工号")==0)//
{
p_query.Format("select * from personnel where emp_no=1");
}
p_query.Format("select * from personnel where emp_no=1");
RefreshData();
}
}
请问为什么,如何才能让上一函数实现查找。
{
UpdateData(TRUE);
CString m_realfield,str;
int id = m_field.GetCurSel();
if(id >= 0)
{
if(str.Compare("员工号")==0)//
{
p_query.Format("select * from personnel where emp_no=1"); RefreshData();//更新函数
}
}
}
按上述代码执行查找,提示打不开数据库。
而如下代码却可以:
void CPERSONNEL::OnButton2()
{
UpdateData(TRUE);
CString m_realfield,str;
int id = m_field.GetCurSel();
if(id >= 0)
{
if(str.Compare("员工号")==0)//
{
p_query.Format("select * from personnel where emp_no=1");
}
p_query.Format("select * from personnel where emp_no=1");
RefreshData();
}
}
请问为什么,如何才能让上一函数实现查找。
你是不是在别的地方执行Select语句的(不是在RefreshData里)。
如果代码完全照你写的这样,str.Compare("员工号")==0肯定返回假吧!
你的str没有赋值,怎么会str.Compare("员工号")==0呢,所以就不会执行呀,
下面的代码,就会执行!