在VC中如何使用ADO向表中插入一条记录?
以下是我的代码,但是不对?究竟怎么办呢?
_bstr_t connstr = _bstr_t(L"Provider=SQLOLEDB.1;Persist Security Info=False;User ID=sa;Initial Catalog=concenter;Data Source=DAIV");
_bstr_t sqlstr = _bstr_t(L"select * from events");
struct InitCOM{
InitCOM(){::CoInitialize(NULL);}
~InitCOM(){::CoUninitialize();}
}_InitCom;
_ConnectionPtr pConn( __uuidof( Connection ) );
_RecordsetPtr pRs( __uuidof( Recordset ) );
try
{
pConn->Mode = adModeReadWrite;
pConn->Open( connstr, L"", L"", -1);
pRs->Open( sqlstr, (IDispatch*) pConn, adOpenKeyset,
adLockOptimistic, adCmdText );
_bstr_t fieldstr = _bstr_t(L"EventID, ClassID, EventDescription, SouceWsID, IsUnknowWs");
_bstr_t valuesstr = _bstr_t(L"3, 1, 'good', 2, 1");
pRs->AddNew(fieldstr, valuesstr);
pConn->Execute(
pRs->Update();
}
catch( _com_error &e )
{
AfxMessageBox( e.Description() );
return -1;
}
pRs->Close();
pConn->Close();