谁能帮我解释这段代码
CString sql;
if ( 1 == m_IsAddOrmodify) {
if (1 == m_ISRootOrArea) {
sql=" insert into TREE(NAME, PARENT, Record1, Record2, Record3) values('" +
m_AreaName + "','ROOT'" + ",'" + m_ip1 + "','" + m_ip2 + "','" + m_ip3 + "')";
// AfxMessageBox(sql);
}else if (2 == m_ISRootOrArea) {
sql.Format("insert into TREE(NAME, PARENT) values(\'%s\', \'%d\')", m_AreaName, m_Areaid);
}else
return;
try
{
_variant_t RecordsAffected;
theApp.m_pConnection->Execute((_bstr_t)sql,&RecordsAffected,adCmdText);
}
catch(_com_error e)///捕捉异常
{
CString temp;
temp.Format("添加区域出错:%s",e.ErrorMessage());
AfxMessageBox(temp);
}
}else if ( 2 == m_IsAddOrmodify) {
sql.Format("select * from TREE where ID=%d", m_Areaid);
_RecordsetPtr m_pRecordset;
try{
m_pRecordset.CreateInstance("ADODB.Recordset");
m_pRecordset->Open((_variant_t)sql, _variant_t((IDispatch*)theApp.m_pConnection, true),adOpenStatic,adLockOptimistic,adCmdText);
m_pRecordset->PutCollect("NAME", _variant_t(m_AreaName));
if (1 == m_ISRootOrArea) {
m_pRecordset->PutCollect("Record1", _variant_t(m_ip1));
m_pRecordset->PutCollect("Record2", _variant_t(m_ip2));
m_pRecordset->PutCollect("Record3", _variant_t(m_ip3));
}
m_pRecordset->Update();
m_pRecordset->Close();
}
catch (_com_error e) {
CString temp;
temp.Format("修改区域出错:%s",e.ErrorMessage());
AfxMessageBox(temp);
}
初接触数据库,帮我看看代码每句都什么意思,我要看懂这段要去看什么?ODBC?DAO?ADO? 还有这种写入数据库的方式是不是已经过时了?