VC 数据库ADO开发

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

VCADO2007-8-30ADOADO(ActiveXDataObject)MicrosoftOLEDBOLEDBCOMADO,ODBCAPIDAORDOVCADOADO(1)COMADO(2)Connection(3)ConnectionCommandSQLRecordset(4):Accesstest.mdbCOMAfxOleInit()COMCWinApp::InitInstance():BOOLCADOTest1App::InitInstance(){AfxOleInit();......#importADOstdafx.h(stdafx.hFileViewHeaderFiles)#importc:\programfiles\commonfiles\system\ado\msado15.dllno_namespacerename(EOF,adoEOF)#includemsado15.tlh,ado15.tliC++ADO:(1)msado15.dll(2)MSDNmsado15.tlh(405):warningC4146:unaryminusoperatorappliedtounsignedtype,resultstillunsignedConnectionConnection:_ConnectionPtrm_pConnection;ConnectionBOOLCADOTest1Dlg::OnInitDialog(){CDialog::OnInitDialog();HRESULThr;try{hr=m_pConnection.CreateInstance(ADODB.Connection);///Connectionif(SUCCEEDED(hr)){hr=m_pConnection-Open(Provider=Microsoft.Jet.OLEDB.4.0;DataSource=test.mdb,,,adModeUnknown);//////ProviderACCESS2000ACCESS97,:Provider=Microsoft.Jet.OLEDB.3.51;}}catch(_com_errore)///{CStringerrormessage;errormessage.Format(!\r\n:%s,e.ErrorMessage());AfxMessageBox(errormessage);///}ConnectionOpenHRESULTConnection15::Open(_bstr_tConnectionString,_bstr_tUserID,_bstr_tPassword,longOptions)ConnectionString,UserID,Password,OptionsConnection,Options:adModeUnknown:adModeRead:adModeWrite:adModeReadWrite:adModeShareDenyRead:ConnectionadModeShareDenyWrite:ConnectionadModeShareExclusive:ConnectionadModeShareDenyNone::(1)JETACCESS2000m_pConnection-Open(Provider=Microsoft.Jet.OLEDB.4.0;DataSource=C:\\test.mdb,,,adModeUnknown);(2)DSNODBC:m_pConnection-Open(DataSource=adotest;UID=sa;PWD=;,,,adModeUnknown);(3)DSNSQLSERVERm_pConnection-Open(driver={SQLServer};Server=127.0.0.1;DATABASE=vckbase;UID=sa;PWD=139,,,adModeUnknown);ServerSQLDATABASEConnectionOpenConnectionConnectionTimeOutStateConnectionTimeOutOpen:m_pConnection-ConnectionTimeout=5;///m_pConnection-Open(DataSource=adotest;,,,adModeUnknown);StateConnection:if(m_pConnection-State)m_pConnection-Close();///SQLRecordset:_RecordsetPtrm_pRecordset;Recordset:m_pRecordset.CreateInstance(ADODB.Recordset);SQL(1)ConnectionExecuteSQLExecute:_RecordsetPtrConnection15::Execute(_bstr_tCommandText,VARIANT*RecordsAffected,longOptions)CommandTextSQLRecordsAffected,OptionsCommandTextOptionsadCmdText:CommandTextadCmdTable:CommandTextadCmdProc:CommandTextadCmdUnknown:Execute_variant_tRecordsAffected;///SQLCREATETABLEusers,usersID,username,old,birthdaym_pConnection-Execute(CREATETABLEusers(IDINTEGER,usernameTEXT,oldINTEGER,birthdayDATETIME),&RecordsAffected,adCmdText);///m_pConnection-Execute(INSERTINTOusers(ID,username,old,birthday)valueS(1,''''''''Washington'''''''',25,''''''''1970/1/1''''''''),&RecordsAffected,adCmdText);///oldm_pConnection-Execute(UPDATEusersSETold=old+1,&RecordsAffected,adCmdText);///SQLm_pRecordset=m_pConnection-Execute(SELECTCOUNT(*)FROMusers,&RecordsAffected,adCmdText);_variant_tvIndex=(long)0;_variant_tvCount=m_pRecordset-GetCollect(vIndex);///vCountm_pRecordset-Close();///CStringmessage;message.Format(%d,vCount.lVal);AfxMessageBox(message);///(2)CommandSQL_CommandPtrm_pCommand;m_pCommand.CreateInstance(ADODB.Command);_variant_tvNULL;vNULL.vt=VT_ERROR;vNULL.scode=DISP_E_PARAMNOTFOUND;///m_pCommand-ActiveConnection=m_pConnection;///m_pCommand-CommandText=SELECT*FROMusers;///m_pRecordset=m_pCommand-Execute(&vNULL,&vNULL,adCmdText);///CommandSELECTCommand(3)Recordsetm_pRecordset-Open(SELECT*FROMusers,_variant_t((IDispatch*)m_pConnection,true),adOpenStatic,adLockOptimistic,adCmdText);Open:HRESULTRecordset15::Open(const_variant_t&Source,const_variant_t&ActiveConnection,enumCursorTypeEnumCursorType,enumLockTypeEnumLockType,longOptions)SourceActiveConnectionConnection_variant_t)CursorType:enumCursorTypeEnum{adOpenUnspecified=-1,///adOpenForwardOnly=0,///MoveNextBookMark,RecordCount,AbsolutePosition,AbsolutePageadOpenKeyset=1,///adOpenDynamic=2,///adOpenStatic=3///};LockTypeenumLockTypeEnum{adLockUnspecified=-1,///adLockReadOnly=1,///adLockPessimistic=2,adLockOptimistic=3,UpdateadLockBatchOptimistic=4};OptionsConnectionExecuteSQLusers:ID,username,old,birthday_variant_tvUsername,vBirthday,vID,vOld;_RecordsetPtrm_pRecordset;m_pRecordset.CreateInstance(ADODB.Recordset);m_pRecordset-Open(SELECT*FROMusers,_variant_t((IDispatch*)m_pConnection,true),adOpenStatic,adLockOptimistic,adCmdText);while(!m_pRecordset-adoEOF)///adoEOFEOFrename(EOF,adoEOF)?{vID=m_pRecordset-GetCollect(_variant_t((long)0));///vUsername=m_pRecordset-GetCollect(username);//usernamevOld=m_pRecordset-GetCollect(old);vBirthday=m_pRecordset-GetCollect(birthday);///DEBUGOUTPUTif(vID.vt!=VT_NULL&&vUsername.vt!=VT_NULL&&vOld.vt!=VT_NULL&&vBirthday.vt!=VT_NULL)TRACE(id:%d,:%s,:%d,:%s\r\n,vID.lVal,(LPCTSTR)(_bstr_t)vUsername,vOld.lVal,(LPCTSTR)(_bstr_t)vBirthday);m_pRecordset-MoveNext();///}m_pRecordset-MoveFirst();///m_pRecordset-Delete(adAffectCurrent);//////for(inti=0;i3;i++){m_pRecordset-AddNew();///m_pRecordset-PutCollect(ID,_variant_t((long)(i+10)));m_pRecordset-PutCollect(username,_variant_t());m_pRecordset-PutCollect(old,_variant_t((long)71));m_pR

1 / 27
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功