VC ADO ACCESS 获取列名

来源:互联网 发布:java字符串按字母排序 编辑:程序博客网 时间:2024/06/05 07:55

BOOL GetAllFields(_RecordsetPtr m_pRecordset,CStringArray & fieldsarray)
    {
        if (m_pRecordset)
        {
            if (m_pRecordset->State)
            {
                try
                {
                    HRESULT   hr;       
                    Fields *  fields = NULL;       
                    hr = m_pRecordset->get_Fields (&fields);
                    long ColCount;       
                    if(SUCCEEDED(hr))        
                        fields->get_Count(&ColCount);       
                    for(long i=0;i<ColCount;i++)
                    {   
                        Field *   field = NULL;   
                        field = fields->GetItem((_variant_t)(i));       
                        fieldsarray.Add(CString((LPCTSTR)field->GetName()));
                       
                    }   
                    if(SUCCEEDED(hr))       
                        fields->Release();
                   
                }
               
                catch(_com_error e)
                {        
                    ::MessageBox(NULL,e.ErrorMessage(),"错误",MB_OK);
                    return FALSE;
                }   
                return TRUE;
               
            }

                return FALSE;
        }

原创粉丝点击