我用的是智能指针。
_RecordsetPtr m_pUserSet;
FieldsPtr m_pFieldsPtr;
FieldPtr m_pFieldPtr;
....
CString sql = "select * from person a , account_card b where b.code(+) = a.code";
...
m_pFieldsPtr = m_pUserSet->Fields;
...
m_pFieldPtr = m_pFieldsPtr->Item["name"]; //正确。访问其它字段都可以但是
m_pFieldPtr = m_pFieldsPtr->Item["a.code"];//就是错误的,就是关联那个字段为什么啊,我该怎么访问他啊。
_RecordsetPtr m_pUserSet;
FieldsPtr m_pFieldsPtr;
FieldPtr m_pFieldPtr;
....
CString sql = "select * from person a , account_card b where b.code(+) = a.code";
...
m_pFieldsPtr = m_pUserSet->Fields;
...
m_pFieldPtr = m_pFieldsPtr->Item["name"]; //正确。访问其它字段都可以但是
m_pFieldPtr = m_pFieldsPtr->Item["a.code"];//就是错误的,就是关联那个字段为什么啊,我该怎么访问他啊。
重名field会导致field名不可访问,只能通过数字索引访问..
m_pFieldPtr=m_pUserSet->Fields->GetItem((short)n);///n表示段名的索引号
str=(char*)(_bstr_t)m_FieldPtr->GetName();//取段名
m_FieldPtr =m_pUserSet->Fields->GetItem((short)j);//取值
CString value=(char*)(_bstr_t)m_FieldPtr->value.vt