刚开始学mfc 用ado连接sql数据库执行查询语句时不成功 !QAQ

刚开始学mfc 用ado连接sql数据库执行查询语句时不成功 求助!QAQ
void CStudentManageDlg::OnBnClickedButtonFind()
{
// TODO:  在此添加控件通知处理程序代码
UpdateData(TRUE);
CString sql;
switch(m_radio1)
{   
  case 0:
sql = "SELECT * FROM Student WHERE Sno=";//通过学号进行查询显示学生基本信息
sql += m_strID;
sql += "";

m_pRecordset_stu.CreateInstance("ADODB.Recordset");
m_pRecordset_stu->CursorLocation = adUseClient;
m_pRecordset_stu->Open((_variant_t)sql, _variant_t((IDispatch *)theApp.m_pConnection, true), adOpenDynamic, adLockPessimistic, adCmdText);
if (m_pRecordset_stu->GetRecordCount() != 0) //表中有记录
{
m_dgStudent.putref_DataSource(NULL);
m_dgStudent.putref_DataSource((LPUNKNOWN)m_pRecordset_stu);
m_dgStudent.put_ColumnHeaders(2);
}
else
{
AfxMessageBox(L"没有查找到该学生的信息!");
return;
}
break;
case 1:
sql = "SELECT * FROM Student WHERE Sname="; //通过姓名进行查询显示学生基本信息
sql += m_strNamee;
sql += "";

m_pRecordset_stu.CreateInstance("ADODB.Recordset");
m_pRecordset_stu->CursorLocation = adUseClient;
m_pRecordset_stu->Open((_variant_t)sql, _variant_t((IDispatch *)theApp.m_pConnection, true), adOpenDynamic, adLockPessimistic, adCmdText);
if (m_pRecordset_stu->GetRecordCount() != 0) //表中有记录
{
m_dgStudent.putref_DataSource(NULL);
m_dgStudent.putref_DataSource((LPUNKNOWN)m_pRecordset_stu);
m_dgStudent.put_ColumnHeaders(2);
}
else
{
AfxMessageBox(L"没有查找到该学生的信息!");
return;
}
break;
case 2:
sql = "SELECT Sno,Sname,Ssex,Sage,Student.Sclass FROM Student,Class WHERE     Student.Sclass=Class.Sclass AND Mno=";  //通过专业进行查询显示学生基本信息
sql += m_strMno;
sql += "";

m_pRecordset_stu.CreateInstance("ADODB.Recordset");
m_pRecordset_stu->CursorLocation = adUseClient;
m_pRecordset_stu->Open((_variant_t)sql, _variant_t((IDispatch *)theApp.m_pConnection, true), adOpenDynamic, adLockPessimistic, adCmdText);
if (m_pRecordset_stu->GetRecordCount() != 0) //表中有记录
{
m_dgStudent.putref_DataSource(NULL);
m_dgStudent.putref_DataSource((LPUNKNOWN)m_pRecordset_stu);
m_dgStudent.put_ColumnHeaders(2);
}
else
{
AfxMessageBox(L"没有查找到该学生的信息!");
return;
}
break;
}
    UpdateData(FALSE);
}

这一串代码是实现通过学号,姓名,专业三种方式进行查询,并将查询结果显示在datagrid控件里。
选择学号,姓名,专业是用radio button那个控件做的,点击的时候会更改m_radio1的值。
然后执行的时候,通过学号查询和通过专业查询都可以实现,通过姓名查询就不行。
不知道为什么 求助!万分感谢!!
------解决思路----------------------
case 1:
sql = "SELECT * FROM Student WHERE Sname="; //通过姓名进行查询显示学生基本信息
sql += m_strNamee;
sql += "";
在这里加断点,看一下sql的值,然后在数据库中执行以下这个sql语句,看看有什么结果。
------解决思路----------------------
可以用ADO助手试试你的数据库连接字符串和SQL语句。
改成这样试试
sql.Format(_T("SELECT * FROM Student WHERE Sno='%s'"), m_strID);//通过学号进行查询显示学生基本信息