在   编辑框中  的 输入的值  不等于 数据库中的 表中的某一列的值,就出现错误例如 我在  “组合框”控件中 选择 “编号”,在  “编辑框”中输入 “汉字”可不可以让它不出现错,重新输入就是??点击“查询”按钮就出现 这个错误求 高手指教感激不尽谢谢

解决方案 »

  1.   

    有代码么?
    vc操作access可以参见下面的demo:
    http://blog.csdn.net/zyq5945/archive/2010/04/29/5541280.aspx
      

  2.   

    感觉是你的语句逻辑有问题,加上try...catch...语句块吧~另外完善逻辑:当着两个值不匹配时输出错误提示框,而不是异常~
      

  3.   

    CString strField;
    m_combox.GetLBText(m_combox.GetCurSel(),strField);
    if(strField.IsEmpty() || m_text0.IsEmpty())
    {
    MessageBox("检索信息不能为空!");
    return;
    }
    ADO m_Ado;
    m_Ado.OnInitADOConn();
    CString sql = "select * from 查询1";
    m_Ado.m_pRecordset = m_Ado.OpenRecordset(sql);
    CString str;
    str.Format("%s = '%s'",strField,m_text0);
    /* m_Ado.m_pRecordset->Filter = (_bstr_t)str;//运行到这一句弹出 Run time error
    m_Ado.m_pRecordset->Requery(0);
      

  4.   

    加上:
    try
    {
       //需要测试的代码}
    catch (_com_error& e)
    {
      AfxMessageBox(e.Description());
    }看看返回的错误是什么
      

  5.   

    就是说输入字母或数字是不会出错的么?CString sql = _T("select * from 查询1");
    试试~
      

  6.   

    那是类型不匹配导致的错误了~
    需要转换一下,把“编号”也转换成string类型看看~
      

  7.   

    请问下  怎么把  数据库 里    “字段”为 “文本”型的 数,用VC读出来  然后变为 int   比如数据库里 文本型的 “12” 怎么变为VC 中的  int  12谢谢