首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > VC/MFC >

vc6的pRecordset怎么获得所有字段的名称和数据类型

2012-03-05 
vc6的pRecordset如何获得所有字段的名称和数据类型?谢谢![解决办法]BOOL CDlgTest::GetMicFields(){_bstr_

vc6的pRecordset如何获得所有字段的名称和数据类型?
谢谢!

[解决办法]
BOOL CDlgTest::GetMicFields()
{

_bstr_t mStrSQL;
CString strSQL;
CString strColName;
BSTR bstrColName;
long ColCount,i;
Field * field = NULL;
HRESULT hr;
Fields * fields = NULL;
LPCTSTR nameField;
CString str;

int nTable=m_cmbAlTab.GetCurSel();
m_cmbAlTab.GetLBText(nTable,str);
//strSQL.Format( "SELECT * FROM %s ",str);
strSQL= "select * from " + str;
mStrSQL=strSQL;

m_pRecordset-> Open(mStrSQL,
theApp.m_pConnection.GetInterfacePtr(),
adOpenDynamic,
adLockOptimistic,
adCmdText);
hr=m_pRecordset-> get_Fields(&fields);//µÃµ½¼Ç¼¼¯µÄ×ֶμ¯ºÏ

if(SUCCEEDED(hr))
fields-> get_Count(&ColCount);//µÃµ½¼Ç¼¼¯µÄ×ֶμ¯ºÏÖеÄ×ֶεÄ×ܸöÊý
for(i=0;i <ColCount;i++)
{
fields-> Item[i]-> get_Name(&bstrColName);//&micro;&Atilde;&micro;&frac12;&frac14;&Ccedil;&Acirc;&frac14;&frac14;&macr;&Ouml;&ETH;&micro;&Auml;×&Ouml;&para;&Icirc;&Atilde;&ucirc;
UINT uType=fields-> Item[i]-> Type;
fields-> Item[i]-> DefinedSize;
strColName=bstrColName;
nameField=strColName;
//m_cmbCol.AddString(nameField);
m_List.SetItemText(i,0,nameField);
m_List.SetItemText(i,1,(LPCTSTR)uType);


}
//OnSelchangeComTable();
if(SUCCEEDED(hr))
fields-> Release();//&Ecirc;&Iacute;·&Aring;&Ouml;&cedil;&Otilde;&euml;


// &sup1;&Oslash;±&Otilde;&frac14;&Ccedil;&Acirc;&frac14;&frac14;&macr;
m_pRecordset-> Close();

return true;

}

热点排行