解决方案 »

  1.   

    看下_variant_t 所支持的
    operator short( ) const; 
    operator long( ) const; 
    operator float( ) const; 
    operator double( ) const; 
    operator CY( ) const; 
    operator _bstr_t( ) const; 
    operator IDispatch*( ) const; 
    operator bool( ) const; 
    operator IUnknown*( ) const; 
    operator DECIMAL( ) const; 
    operator BYTE( ) const;
    operator VARIANT() const throw();
    operator char() const;
    operator unsigned short() const;
    operator unsigned long() const;
    operator int() const;
    operator unsigned int() const;
    operator __int64() const;
    operator unsigned __int64() const;
    只要是这些类型一个强制转换过去就OK了 
      

  2.   

    int n=   (long)(var); 
    ColeDateTime dt = (ColeDateTime)var;
      

  3.   

    如果数据库中Patient_id是数字类型的话,可以直接读到int里
      

  4.   

    如果是整型
    int n=   m_pRecordset-> GetCollect( "Patient_id ").intVal; 
    如果是日期型
    COleDateTime date=m_pRecordset-> GetCollect( "Patient_id ").date;
    如果从_varaint_t 转化为CStrig
    str=var.ChangeType(VT_BSTR);