m_pRecordset->Fields->GetItem("板厚")->Value.lVal 读一个记录的数值时,总是为0,而读字符串时可以,VC+ADO+SQLSERVER2000

解决方案 »

  1.   

    try
    {
    vtFld = m_pRecord->Fields->GetItem(lpFieldName)->Value;
    switch(vtFld.vt)
    {
    case VT_I2://短整型
    val = vtFld.iVal;
    break;
    case VT_I4://整型
    val = vtFld.lVal;
    break;
    case VT_DECIMAL:
    val = vtFld.decVal.Lo64;
    break;
    default:
    val = -1;
    break;
    }
    lValue = val;
    }
    catch(_com_error &error)
    {
    Log(error.ErrorMessage());
    m_bConnected = FALSE;
    return false;
    }我用的挺好,没有问题啊
      

  2.   

    try it
     long iTest = long(m_pRecordset->Fields->GetItem("板厚")->Value);
      

  3.   

    板厚字段是什么类型的?
    iVal
    lVal
    decVal.Lo64