ÓÑÇéÌáʾ£ºÈç¹û±¾ÍøÒ³´ò¿ªÌ«Âý»òÏÔʾ²»ÍêÕû£¬Çë³¢ÊÔÊó±êÓÒ¼ü¡°Ë¢Ð¡±±¾ÍøÒ³£¡ÔĶÁ¹ý³Ì·¢ÏÖÈκδíÎóÇë¸æËßÎÒÃÇ£¬Ð»Ð»£¡£¡ ±¨¸æ´íÎó
¹·¹·Êé¼® ·µ»Ø±¾ÊéĿ¼ ÎÒµÄÊé¼Ü ÎÒµÄÊéÇ© TXTÈ«±¾ÏÂÔØ ½øÈëÊé°É ¼ÓÈëÊéÇ©

VB2008´ÓÈëÃŵ½¾«Í¨(PDF¸ñʽӢÎÄ°æ)-µÚ7ÕÂ

°´¼üÅÌÉÏ·½Ïò¼ü ¡û »ò ¡ú ¿É¿ìËÙÉÏÏ·­Ò³£¬°´¼üÅÌÉ쵀 Enter ¼ü¿É»Øµ½±¾ÊéĿ¼ҳ£¬°´¼üÅÌÉÏ·½Ïò¼ü ¡ü ¿É»Øµ½±¾Ò³¶¥²¿£¡
¡ª¡ª¡ª¡ªÎ´ÔĶÁÍꣿ¼ÓÈëÊéÇ©ÒѱãÏ´μÌÐøÔĶÁ£¡




¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡Enhancing¡¡the¡¡Configuration¡¡File¡¡¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡326¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡Loading¡¡a¡¡Strongly¡¡Named¡¡Assembly¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡331¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡Relocating¡¡a¡¡Strongly¡¡Named¡¡Assembly¡¡to¡¡the¡¡GAC¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡333¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡Using¡¡Version¡¡Numbers¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡333¡¡


¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­Page¡¡15¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡öC¡¡ON¡¡TE¡¡N¡¡TS¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡xiii¡¡



¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡Implementing¡¡a¡¡Shared¡¡Typed¡¡Convention¡­Based¡¡Architecture¡¡¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡337¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡Dynamically¡¡Loading¡¡Base¡¡Class¡¡or¡¡Interface¡¡Types¡¡¡¡¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡339¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡The¡¡Important¡¡Stuff¡¡to¡¡Remember¡¡¡¡¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡339¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡Some¡¡Things¡¡for¡¡You¡¡to¡¡Do¡¡¡¡¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡340¡¡



¡öCHAPTER¡¡13¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡Learning¡¡About¡¡Multithreading¡¡¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡341¡¡



¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡Understanding¡¡Multitasking¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡341¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡Preemptive¡¡Multitasking¡¡¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡342¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡Time¡¡Slicing¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡342¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡Using¡¡Threads¡¡¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡344¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡Creating¡¡a¡¡New¡¡Thread¡¡¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡345¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡Waiting¡¡for¡¡the¡¡Thread¡¡to¡¡End¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡346¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡Creating¡¡a¡¡Thread¡¡with¡¡State¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡347¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡Synchronizing¡¡Between¡¡Threads¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡349¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡How¡¡Not¡¡to¡¡Deadlock¡¡Your¡¡Code¡¡£¨Mostly£©¡¡¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡355¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡Implementing¡¡a¡¡Reader/Writer¡¡Threaded¡¡Architecture¡¡¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡359¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡Implementing¡¡a¡¡Producer/Consumer¡¡Architecture¡¡¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡363¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡Using¡¡a¡¡Hidden¡¡Producer/Consumer¡¡Implementation¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡363¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡Implementing¡¡a¡¡Generic¡¡Producer/Consumer¡¡Architecture¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡364¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡Using¡¡an¡¡Asynchronous¡¡Approach¡¡¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡367¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡The¡¡Important¡¡Stuff¡¡to¡¡Remember¡¡¡¡¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡368¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡Some¡¡Things¡¡for¡¡You¡¡to¡¡Do¡¡¡¡¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡369¡¡



¡öCHAPTER¡¡14¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡Learning¡¡About¡¡Relational¡¡Database¡¡Data¡¡¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡371¡¡



¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡Understanding¡¡Relational¡¡Databases¡¡¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡371¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡Relational¡¡Database¡¡Tables¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡371¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡Database¡¡Relations¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡373¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡Accessing¡¡Relational¡¡Databases¡¡¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡375¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡Designing¡¡a¡¡Database¡¡Using¡¡Visual¡¡Basic¡¡Express¡¡¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡377¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡Configuring¡¡the¡¡Data¡¡Source¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡377¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡Adding¡¡the¡¡Tables¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡378¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡Accessing¡¡the¡¡Database¡¡Using¡¡ADO¡¡¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡382¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡Connecting¡¡to¡¡a¡¡Database¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡382¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡Closing¡¡a¡¡Database¡¡Connection¡¡¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡382¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡Adding¡¡Table¡¡Data¡¡¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡382¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡Selecting¡¡Data¡¡from¡¡a¡¡Table¡¡¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡385¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡Deleting¡¡Data¡¡from¡¡the¡¡Database¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡386¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡Recapping¡¡ADO¡¡Usage¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡386¡¡


¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­Page¡¡16¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­

xiv¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡öCO¡¡N¡¡T¡¡E¡¡N¡¡T¡¡S¡¡¡¡¡¡



¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡Using¡¡the¡¡Dataset¡¡Designer¡¡¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡387¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡Building¡¡Relations¡¡Between¡¡Tables¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡387¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡Using¡¡the¡¡Generated¡¡Code¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡391¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡The¡¡Important¡¡Stuff¡¡to¡¡Remember¡¡¡¡¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡¡£¡¡392¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡
·µ»ØĿ¼ ÉÏÒ»Ò³ ÏÂÒ»Ò³ »Øµ½¶¥²¿ ÔÞ£¨0£© ²È£¨0£©
δÔĶÁÍꣿ¼ÓÈëÊéÇ©ÒѱãÏ´μÌÐøÔĶÁ£¡
ÎÂÜ°Ìáʾ£º ο´Ð¡ËµµÄͬʱ·¢±íÆÀÂÛ£¬Ëµ³ö×Ô¼ºµÄ¿´·¨ºÍÆäËüС»ï°éÃÇ·ÖÏíÒ²²»´íŶ£¡·¢±íÊéÆÀ»¹¿ÉÒÔ»ñµÃ»ý·ÖºÍ¾­Ñé½±Àø£¬ÈÏÕæдԭ´´ÊéÆÀ ±»²ÉÄÉΪ¾«ÆÀ¿ÉÒÔ»ñµÃ´óÁ¿½ð±Ò¡¢»ý·ÖºÍ¾­Ñé½±ÀøŶ£¡