给定一个表名,我只知道读取出每行记录,但光有记录不知道它是什么意义。
请问要怎么读取出列名。

解决方案 »

  1.   

    _RecordsetPtr pRecordset;
    //连接就不写了
    strSql="select * from table ";
    pRecordset.CreateInstance (_uuidof(Recordset));
    pRecordset->Open((_bstr_t)m_strSql,_variant_t((IDispatch*)m_pConnection,true),adOpenStatic,adLockOptimistic,adCmdText);
    FieldsPtr fields;
    FieldPtr field;
    pRecordset->get_Fields(&fields);
    long nColCount;
    fields->get_Count(&nColCount);
    for (long i=0;i<nColCount;i++)
    {
        field=fields->Item[nColCount]; 
        BSTR
       //field->get_Name();//通过这个函数就可以
    }
      

  2.   

    程序运行到 field=fields->Item[nColCount];时候就出错了
    跳进catch里
    显示:0046b470 每次不一样
      

  3.   

    fields->get_Count(&nColCount);
    的结果是对的。
      

  4.   


    for (long i=0;i<nColCount;i++)
    {
      field=fields->Item[nColCount]; 
      BSTR
      //field->get_Name();//通过这个函数就可以
    }//-->
    for (long i=0;i<nColCount;i++)
    {
      field=fields->Item[i]; 
      BSTR
      //field->get_Name();//通过这个函数就可以
    }