VC++ÖÐʹÓÃADO·½Ê½²Ù×÷ACCESSÊý¾Ý¿â(תÔØ)
VC++ÖÐʹÓÃADO·½Ê½²Ù×÷ACCESSÊý¾Ý¿â
תÔØ£ºhttp://www.programbbs.com/doc/3078.htm
ADO(ActiveX Data Object)ÊÇMicrosoftÊý¾Ý¿âÓ¦ÓóÌÐò¿ª·¢µÄнӿڣ¬Êǽ¨Á¢ÔÚOLE DBÖ®Éϵĸ߲ãÊý¾Ý¿â·ÃÎʼ¼Êõ£¬¼´Ê¹Äã¶ÔOLE DB£¬COM²»Á˽âÒ²ÄÜÇáËɶԸ¶ADO,ÒòΪËü·Ç³£¼òµ¥Ò×Óã¬ÉõÖÁ±ÈÄãÒÔÍùËù½Ó´¥µÄODBC API¡¢DAO¡¢RDO¶¼ÒªÈÝÒ×ʹÓ㬲¢²»Ê§Áé»îÐÔ¡£±¾ÎÄÏêϸµØ½éÉÜÔÚVisual C++¿ª·¢»·¾³ÏÂÈçºÎʹÓÃADOÀ´½øÐÐÊý¾Ý¿âÓ¦ÓóÌÐò¿ª·¢¡£
Ò»¡¢ÊµÏÖ·½·¨
¡¡¡¡ÍòÊ¿ªÍ·ÄÑ£¬ÈκÎÒ»ÖÖм¼Êõ¶ÔÓÚ³õѧÕßÀ´Ëµ×îÖØÒªµÄ»¹ÊÇ"ÈëÃÅ"£¬ÕÆÎÕÆäÒªµã¡£ÈÃÎÒÃÇÀ´¿´¿´ADOÊý¾Ý¿â¿ª·¢µÄ»ù±¾Á÷³Ì°É£¡ËüµÄ»ù±¾²½ÖèÈçÏ£º
¡¡¡¡£¨1£©³õʼ»¯COM¿â£¬ÒýÈëADO¿â¶¨ÒåÎļþ
¡¡¡¡£¨2£©ÓÃConnection¶ÔÏóÁ¬½ÓÊý¾Ý¿â
¡¡¡¡£¨3£©ÀûÓý¨Á¢ºÃµÄÁ¬½Ó£¬Í¨¹ýConnection¡¢Command¶ÔÏóÖ´ÐÐSQLÃüÁ»òÀûÓÃRecordset¶ÔÏóÈ¡µÃ½á¹û¼Ç¼¼¯½øÐвéѯ¡¢´¦Àí¡£
¡¡¡¡£¨4£©Ê¹ÓÃÍê±Ïºó¹Ø±ÕÁ¬½ÓÊͷŶÔÏó¡£
¡¡¡¡ÏÂÃæÎÒÃǽ«Ïêϸ½éÉÜÉÏÊö²½Öè²¢¸ø³öÏà¹Ø´úÂë¡£
¡¡¡¡1¡¢COM¿âµÄ³õʼ»¯
¡¡¡¡ÎÒÃÇ¿ÉÒÔʹÓÃAfxOleInit()À´³õʼ»¯COM¿â£¬ÕâÏ×÷ͨ³£ÔÚCWinApp::InitInstance()µÄÖØÔغ¯ÊýÖÐÍê³É£¬Çë¿´ÈçÏ´úÂë:
BOOL CADOTest1App::InitInstance()
{
¡¡AfxOleInit();
¡¡......
}
¡¡¡¡2¡¢ÓÃ#importÖ¸ÁîÒýÈëADOÀàÐÍ¿â
¡¡¡¡ÎªÁËÒýÈëADOÀàÐͿ⣬ÐèÒªÔÚÏîÄ¿µÄstdafx.hÎļþÖмÓÈëÈçÏÂÓï¾ä£º
#import "c:\program files\common files\system\ado\msado15.dll"
no_namespace rename("EOF","adoEOF")
¡¡¡¡ÕâÒ»Óï¾äÓкÎ×÷ÓÃÄØ£¿Æä×îÖÕ×÷ÓÃͬÎÒÃÇÒѾʮ·ÖÊìϤµÄ#includeÀàËÆ£¬±àÒëµÄʱºòϵͳ»áΪÎÒÃÇÉú³Émsado15.tlh,ado15.tliÁ½¸öC++Í·ÎļþÀ´¶¨ÒåADO¿â¡£
¡¡¡¡ÐèÒª¶ÁÕßÅóÓÑ×¢ÒâµÄÊÇ£ºÄúµÄ¿ª·¢»·¾³ÖÐmsado15.dll²»Ò»¶¨ÔÚÕâ¸öĿ¼Ï£¬Ç밴ʵ¼ÊÇé¿öÐÞ¸Ä;ÔÚ±àÒëµÄʱºò¿ÉÄÜ»á³öÏÖÈçϾ¯¸æ£¬¶Ô´Ë΢ÈíÔÚMSDNÖÐ×÷ÁË˵Ã÷£¬²¢½¨ÒéÎÒÃDz»ÒªÀí»áÕâ¸ö¾¯¸æ£ºmsado15.tlh(405) : warning C4146: unary minus operator applied to unsigned type, result still unsigned¡£
¡¡¡¡3¡¢´´½¨Connection¶ÔÏó²¢Á¬½ÓÊý¾Ý¿â
¡¡¡¡ÎªÁËÊ×ÏÈÎÒÃÇÐèÒªÌí¼ÓÒ»¸öÖ¸ÏòConnection¶ÔÏóµÄÖ¸Õë_ConnectionPtr m_pConnection£¬ÏÂÃæµÄ´úÂëÑÝʾÁËÈçºÎ´´½¨Connection¶ÔÏóʵÀý¼°ÈçºÎÁ¬½ÓÊý¾Ý¿â²¢½øÐÐÒì³£²¶×½£º
BOOL CADOTest1Dlg::OnInitDialog()
{
¡¡CDialog::OnInitDialog();
¡¡HRESULT hr;
¡¡try
¡¡{
¡¡¡¡hr = m_pConnection.CreateInstance("ADODB.Connection");///
Ïà¹ØÎĵµ£º
Ëæ»úÉú³ÉÕûÊý£¬È»ºóËã³öÕý¸ºÁã
void getrand(int *a, int m)
{
int i;
srand(time(NULL));
for (i=0; i<m; i++)
{
a = rand()-rand();
}
}
int main(int argc, char* argv[])
{
  ......
Ò»¡¢º¯Êýµ÷ÓõĻù±¾²½Öè
º¯Êýµ÷ÓôóÖ°üÀ¨ÒÔϼ¸¸ö²½Öè¡£
£¨1£©²ÎÊýÈëÕ»£º½«²ÎÊý´ÓÓÒÏò×óÒÀ´ÎѹÈëϵͳջÖС£
£¨2£©·µ»ØµØÖ·ÈëÕ»£º½«µ±Ç°´úÂëÇøµ÷ÓÃÖ¸ÁîµÄÏÂÒ»ÌõÖ¸ÁîµØַѹÈëÕ»ÖУ¬¹©º¯Êý·µ»Øʱ¼ÌÐøÖ´ÐС£
£¨3£©´úÂëÇøÌøת£º´¦ÀíÆ÷´Óµ±Ç°´úÂëÇøÌøתµ½±»µ÷Óú¯ÊýµÄÈë¿Ú´¦¡£
£¨4£©Õ»Ö¡µ÷Õû£º¾ßÌå°üÀ¨£º
±£´æµ±Ç°Õ»Ö¡×´Ì¬ ......
ÔÙÉÏһƪ£¬ÎÒÃǽéÉÜÁË»ù±¾µ÷ÊÔ¡£Ö®Ç°Ò²ËµÁË£¬Ö®ËùÒ԰ѵ÷ÊÔ·ÅÔÚÇ°Ãæ½²ÊÇÒòΪºóÃæµÄÎÄÕ»ù±¾¶¼»áÓõ½µ÷ÊÔ¡£¹Û²ìÎÒÃǵijÌÐòµ½µ×·¢ÉúÁËʲô¡£ÈÃÎÒÃÇÄܹ»Ö±½ÓÃ÷Á˵Ŀ´Çå³þÎÊÌâµÄ±¾ÖÊ¡£±¾Æª½«ÉîÈëÒ»µã½éÉÜÖ¸ÕëÕâ¸öÈÃÎÞÊý³õѧÕßη¾åµÄ¶«Î÷¡£Ï£Íû´ó¼ÒÔÙ¿´Í걾ƪ֮ºóÄܶÔÖ¸ÕëÓÐеÄÈÏʶ£¬Ö®ºó²»ÔÙ¾åÅÂËü¡£¾õµÃËü¾ÍÄÇô»ØÊ¡£ÄÇÏÂÃæÎÒ ......
µÚһƪÎÄÕÂÖÕÓÚÂä±ÊÁË£¬±¾ÎĽ«´Ó˼¿¼µÄ½Ç¶ÈÈ¥ÖØÐÂÈÏʶһÏÂHelloworld¡£ÔÚÀý×ÓÖ®ºó»áÌá³ö²»Í¬µÄÎÊÌ⣬Òýµ¼´ó¼Òȥ˼¿¼Ã¿Ò»¾äÄËÖÁÿ¸öϸ½Ú¡£Í¬Ê±Ï£ÍûÄܹ»Èôó¼ÒÒÔºóÄܹ»ÒÔ²»¶Ï˼¿¼²»¶ÏÌáÎʵķ½Ê½È¥¿´´ý×Ô¼ºµÄ³ÌÐò¡£ÎÒÏàÐÅ´ó¼Ò»á·¢ÏֺܶàеĶ«Î÷£¬ºÃÁËÇÐÈëÕýÌâ¡£
ÎÒÃÇÿѧһÖÖеÄÓïÑÔ»ù±¾¶¼»á´Óhelloworld¿ªÊ¼£¬»ù±¾Ã¿ÖÖÓïÑÔ ......
×î½üÒ»Ö±Ñо¿Ò»¸ö¶Ô¸öÈ˶øÑÔºÜÓмÛÖµµÄÒ»¸öLIB¿âµÄÄæÏò¡£ÔÚ½ñÌìÏ°àºóͻȻÁé¸ÐÉÁÏÖ£¬Õâ¸ö¶Ï¶ÏÐøÐøÄæÁ˽ӽüÒ»ÖܵĺËÐĹÜÀíÀà¡£ÖÕÓÚÔÚ½ñÌì¸øÄæÍêÁË¡£ÔÚ×îºóÒ»¸öº¯ÊýÀÅöµ½ÁË֮ǰ»ù±¾Ã»ÓÐÓùýµÄÒ»ÌõÖ¸Áî¡££¨ºÇºÇ£¬¸ßÊÖ¼ûЦÁË£¡£©µ±È»¹â¿´µ¥¾äµÄ»ã±àÖ¸ÁÊÇûÓа취¿´³ö¾ßÌåµÄ×÷Óõģ¬¶øÇÒ»¹ºÜ¿ÉÄÜ»áÈÏΪÔ×÷Õß±¾À´¾ÍÊÇÓû㱠......