你用什么数据库?字段类型?
delphi中是:
with query do
begin
  sql.clear;
  sql.add('select * from table where name='+''''+combobox1.seltext+''''+' and old='+''''+combobox2.seltext+'''');
open;
end;
listbox.string[0] := query.fieldbyname('xxxxxx').asstring;
....
不好意思,VC偶不懂的啦

解决方案 »

  1.   

    您用的应该是ADO吧,在ADO中通常是这样
    CString strSQL;
    strSQL.Format("SELECT FIELD1,FIELD2 FROM TABLE");

    //构造查询语句
    _bstr_t bstrSource(strSQL);
    int nCols = 18; int nRow = 0;
    CString strData; HRESULT lhr = S_OK;
    _RecordsetPtr rs = NULL;
    Fields *pFields = NULL;
    Field * pField = NULL;
    COleVariant vntFieldValue;
    _variant_t index;
    index.vt = VT_I4; //创建数据选择集
    lhr = rs.CreateInstance(__uuidof(Recordset));
    try
    {
    //打开数据选择集
    rs->Open(bstrSource, m_adoPDM.GetInterfacePtr(), adOpenForwardOnly, adLockReadOnly, -1); //遍历选择集
    while( VARIANT_FALSE==rs->IsEOF )
    {
    //读取行信息(由列组合而成)
    rs->get_Fields(&pFields);
    // pFields->get_Count(&nCols);
    //遍历行中的各列信息 for( int nField=0; nField<nCols; nField++ ) {
    index.lVal = nField;
    vntFieldValue.bstrVal = NULL;
    //读取列的信息
    pFields->get_Item(index, &pField);
    //读取列的字段内容
    pField->get_Value(&vntFieldValue);
    strData = strVARIANT(vntFieldValue); if( nField==0 )
    m_List.InsertItem( LVIF_TEXT, nRow, strData, 0, 0, -1, NULL);
    else
    m_List.SetItem(nRow, nField, LVIF_TEXT, strData, -1, 0, 0, 0);
    }
    rs->MoveNext();
    nRow++;
    }
             rs->close();
    }
    catch(_com_error &er)
    {
    //进行异常捕捉
    DisplayADOException(er);
    AfxMessageBox(strSQL);
    return;
    }
    在DAO中的用法不太相同,以上我使用的是VC中的控件CLISTCTRL