Õ¾ÄÚËÑË÷: ÇëÊäÈëËÑË÷¹Ø¼ü´Ê

µ±Ç°Ò³Ãæ: ¿ª·¢×ÊÁÏÊ×Ò³ ¡ú J2EE רÌâ ¡ú JDBC ¸ÅÊö£¨Ò»£©

JDBC ¸ÅÊö£¨Ò»£©

ÕªÒª: JDBC ¸ÅÊö£¨Ò»£©
ÄÚÈÝ: ³ö×Ô£ºlinuxaid.com.cn 2002Äê11ÔÂ14ÈÕ 09:35
1.1 ʲôÊÇ JDBCTM£¿

JDBCTM ÊÇÒ»ÖÖÓÃÓÚÖ´ÐÐ SQL Óï¾äµÄ JavaTM API£¨ÓÐÒâ˼µÄÊÇ£¬JDBC ±¾ÉíÊǸöÉÌ
±êÃû¶ø²»ÊÇÒ»¸öËõд×Ö£»È»¶ø£¬JDBC³£±»ÈÏΪÊÇ´ú±í “Java Êý¾Ý¿âÁ¬½Ó (Java Database Connectivity)”£©¡£ËüÓÉÒ»×éÓà Java ±à³ÌÓïÑÔ±àдµÄÀàºÍ½Ó¿Ú×é³É¡£JDBC Ϊ¹¤¾ß/Êý¾Ý¿â¿ª·¢ÈËÔ±ÌṩÁËÒ»¸ö±ê×¼µÄ API£¬Ê¹ËûÃÇÄܹ»Óô¿Java API À´±àдÊý¾Ý¿âÓ¦ÓóÌÐò¡£4

ÓÐÁË JDBC£¬Ïò¸÷ÖÖ¹ØϵÊý¾Ý¿â·¢ËÍ SQL Óï¾ä¾ÍÊÇÒ»¼þºÜÈÝÒ×µÄÊ¡£»»ÑÔÖ®£¬ÓÐÁËJDBC API£¬¾Í²»±ØΪ·ÃÎÊ Sybase Êý¾Ý¿âרÃÅдһ¸ö³ÌÐò£¬Îª·ÃÎÊ Oracle Êý¾Ý¿âÓÖרÃÅдһ¸ö³ÌÐò£¬Îª·ÃÎÊInformix Êý¾Ý¿âÓÖдÁíÒ»¸ö³ÌÐò£¬µÈµÈ¡£ÄúÖ»ÐèÓà JDBC API дһ¸ö³ÌÐò¾Í¹»ÁË£¬Ëü¿ÉÏòÏàÓ¦Êý¾Ý¿â·¢ËÍ SQL Óï¾ä¡£¶øÇÒ£¬Ê¹Óà Java ±à³ÌÓïÑÔ±àдµÄÓ¦ÓóÌÐò£¬¾ÍÎÞÐëÈ¥ÓÇÂÇҪΪ²»Í¬µÄƽ̨±àд²»Í¬µÄÓ¦ÓóÌÐò¡£½« Java ºÍ JDBC ½áºÏÆðÀ´½«Ê¹³ÌÐòÔ±Ö»Ðëдһ±é³ÌÐò¾Í¿ÉÈÃËüÔÚÈκÎƽ̨ÉÏÔËÐС£

Java ¾ßÓмá¹Ì¡¢°²È«¡¢Ò×ÓÚʹÓá¢Ò×ÓÚÀí½âºÍ¿É´ÓÍøÂçÉÏ×Ô¶¯ÏÂÔصÈÌØÐÔ£¬ÊDZàдÊý¾Ý¿âÓ¦ÓóÌÐòµÄ½Ü³öÓïÑÔ¡£ËùÐèÒªµÄÖ»ÊÇ Java Ó¦ÓóÌÐòÓë¸÷ÖÖ²»Í¬Êý¾Ý¿âÖ®¼ä½øÐжԻ°µÄ·½·¨¡£¶ø JDBC ÕýÊÇ×÷Ϊ´ËÖÖÓÃ;µÄ»úÖÆ¡£

JDBC À©Õ¹ÁË Java µÄ¹¦ÄÜ¡£ÀýÈ磬Óà Java ºÍ JDBC API ¿ÉÒÔ·¢²¼º¬ÓÐ appletµÄÍøÒ³£¬¶ø¸Ã applet ʹÓõÄÐÅÏ¢¿ÉÄÜÀ´×ÔÔ¶³ÌÊý¾Ý¿â¡£ÆóÒµÒ²¿ÉÒÔÓà JDBC ͨ¹ýIntranet ½«ËùÓÐÖ°Ô±Á¬µ½Ò»¸ö»ò¶à¸öÄÚ²¿Êý¾Ý¿âÖУ¨¼´Ê¹ÕâЩְԱËùÓõļÆËã»úÓÐ Windows¡¢ Macintosh ºÍ UNIX µÈ¸÷ÖÖ²»Í¬µÄ²Ù×÷ϵͳ£©¡£Ëæ×ÅÔ½À´Ô½¶àµÄ³ÌÐòÔ±¿ªÊ¼Ê¹Óà Java ±à³ÌÓïÑÔ£¬¶Ô´Ó JavaÖбã½ÝµØ·ÃÎÊÊý¾Ý¿âµÄÒªÇóÒ²ÔÚÈÕÒæÔö¼Ó¡£

MIS ¹ÜÀíÔ±ÃǶ¼Ï²»¶ Java ºÍ JDBC µÄ½áºÏ£¬ÒòΪËüʹÐÅÏ¢´«²¥±äµÃÈÝÒ׺;­¼Ã¡£ÆóÒµ¿É¼ÌÐøʹÓÃËüÃÇ°²×°ºÃµÄÊý¾Ý¿â£¬²¢Äܱã½ÝµØ´æÈ¡ÐÅÏ¢£¬¼´Ê¹ÕâЩÐÅÏ¢ÊÇ´¢´æÔÚ²»Í¬Êý¾Ý¿â¹ÜÀíϵͳÉÏ¡£Ð³ÌÐòµÄ¿ª·¢Æں̡ܶ£°²×°ºÍ°æ±¾¿ØÖƽ«´óΪ¼ò»¯¡£³ÌÐòÔ±¿ÉÖ»±àдһ±éÓ¦ÓóÌÐò»òÖ»¸üÐÂÒ»´Î£¬È»ºó½«Ëü·Åµ½·þÎñÆ÷ÉÏ£¬ËæºóÈκÎÈ˾Ͷ¼¿ÉµÃµ½×îа汾µÄÓ¦ÓóÌÐò¡£¶ÔÓÚÉÌÎñÉϵÄÏúÊÛÐÅÏ¢·þÎñ£¬ Java ºÍ JDBC ¿ÉΪÍⲿ¿Í»§Ìṩ»ñÈ¡ÐÅÏ¢¸üеĸüºÃ·½·¨¡£

1.1.1 JDBC µÄÓÃ;ÊÇʲô£¿

¼òµ¥µØ˵£¬JDBC ¿É×öÈý¼þÊ£º

ÓëÊý¾Ý¿â½¨Á¢Á¬½Ó£¬
·¢ËÍ SQL Óï¾ä£¬
´¦Àí½á¹û¡£


ÏÂÁдúÂë¶Î¸ø³öÁËÒÔÉÏÈý²½µÄ»ù ±¾Ê¾Àý£º

Connection con = DriverManager.getConnection (
"jdbc:odbc:wombat", "login", "password");
Statement stmt = con.createStatement();
ResultSet rs = stmt.executeQuery("SELECT a, b, c FROM Table1");
while (rs

1.1.2 JDBC ÊÇÒ»Öֵͼ¶ API £¬ÊǸ߼¶ API µÄ»ù´¡

JDBC ÊǸö“µÍ¼¶”½Ó¿Ú£¬Ò²¾ÍÊÇ˵£¬ËüÓÃÓÚÖ±½Óµ÷Óà SQL ÃüÁî¡£ÔÚÕâ·½ÃæËüµÄ¹¦Äܼ«¼Ñ£¬²¢±ÈÆäËüµÄÊý¾Ý¿âÁ¬½Ó API Ò×ÓÚʹÓ㬵«ËüͬʱҲ±»Éè¼ÆΪһÖÖ»ù´¡½Ó¿Ú£¬ÔÚËüÖ®ÉÏ¿ÉÒÔ½¨Á¢¸ß¼¶½Ó¿ÚºÍ¹¤¾ß¡£

¸ß¼¶½Ó¿ÚÊÇ“¶ÔÓû§ÓѺõĔ½Ó¿Ú£¬ËüʹÓõÄÊÇÒ»ÖÖ¸üÒ×Àí½âºÍ¸üΪ·½±ãµÄ API£¬ÕâÖÖ API ÔÚÄ»ºó±»×ª»»ÎªÖîÈç JDBC ÕâÑùµÄµÍ¼¶½Ó¿Ú¡£ÔÚ±àд±¾ÎÄʱ£¬ÕýÔÚ¿ª·¢Á½ÖÖ»ùÓÚ JDBC µÄ¸ß¼¶ API£º


Ò»ÖÖÓÃÓÚ Java µÄǶÈëʽ SQL¡£ÖÁÉÙÒѾ­ÓÐÒ»¸öÌṩÕ߼ƻ®±àдËü¡£DBMS ʵÏÖSQL£ºÒ»ÖÖרÃÅÉè¼ÆÀ´ÓëÊý¾Ý¿âÁªºÏʹÓõÄÓïÑÔ¡£JDBC ÒªÇó SQL Óï¾ä±ØÐë×÷Ϊ String ´«¸ø Java ·½·¨¡£Ïà·´£¬Ç¶Èëʽ SQLÔ¤´¦ÀíÆ÷ÔÊÐí³ÌÐòÔ±½« SQL Óï¾äÖ±½ÓÓëJava »ìÔÚÒ»ÆðʹÓá£ÀýÈ磬¿ÉÔÚ SQL Óï¾äÖÐʹÓà Java ±äÁ¿£¬ÓÃÒÔ½ÓÊÜ»òÌṩSQL Öµ¡£È»ºó£¬Ç¶Èëʽ SQL Ô¤´¦ÀíÆ÷½«Í¨¹ý JDBC µ÷ÓðÑÕâÖÖ Java/SQL µÄ»ìºÏÎïת»»ÎªJava¡£¹ØϵÊý¾Ý¿â±íµ½ Java ÀàµÄÖ±½ÓÓ³Éä¡£JavaSoft ºÍÆäËüÌṩÕ߶¼Éù³ÆҪʵÏÖ¸ÃAPI¡£ÔÚÕâÖÖ“¶ÔÏó/¹Øϵ”Ó³ÉäÖУ¬±íÖеÄÿÐжÔÓ¦ÓÚÀàµÄÒ»¸öʵÀý£¬¶øÿÁеÄÖµ¶ÔÓ¦ÓÚ¸ÃʵÀýµÄÒ»¸öÊôÐÔ¡£ÓÚÊÇ£¬³ÌÐòÔ±¿ÉÖ±½Ó¶Ô Java ¶ÔÏó½øÐвÙ×÷£»´æÈ¡Êý¾ÝËùÐèµÄ SQL µ÷Óý«ÔÚ“ÑÚ¸ÇÏ”×Ô¶¯Éú³É¡£´ËÍ⻹¿ÉÌṩ¸ü¸´ÔÓµÄÓ³É䣬ÀýÈ罫¶à¸ö±íÖеÄÐнáºÏ½øÒ»¸ö Java ÀàÖС£

Ëæ×ÅÈËÃÇ¶Ô JDBC µÄÐËȤÈÕÒæÔöÕÇ£¬Ô½À´Ô½¶àµÄ¿ª·¢ÈËÔ±Ò»Ö±ÔÚʹÓûùÓÚ JDBC µÄ¹¤¾ß£¬ÒÔʹ³ÌÐòµÄ±àд¸ü¼ÓÈÝÒס£³ÌÐòÔ±Ò²Ò»Ö±ÔÚ±àдÁ¦Í¼Ê¹×îÖÕÓû§¶ÔÊý¾Ý¿âµÄ·ÃÎʱäµÃ¸üΪ¼òµ¥µÄÓ¦ÓóÌÐò¡£ÀýÈ磬ӦÓóÌÐò¿ÉÌṩһ¸öÑ¡ÔñÊý¾Ý¿âÈÎÎñµÄ²Ëµ¥¡£ÈÎÎñ±»Ñ¡¶¨ºó£¬Ó¦ÓóÌÐò½«¸ø³öÌáʾ¼°¿Õ°×¹©ÌîдִÐÐÑ¡¶¨ÈÎÎñËùÐèµÄÐÅÏ¢¡£ËùÐèÐÅÏ¢ÊäÈëºó£¬Ó¦ÓóÌÐò½«×Ô¶¯µ÷ÓÃËùÐèµÄSQL ÃüÁî¡£ÔÚÕâÑùÒ»ÖÖ³ÌÐòµÄЭÖúÏ£¬¼´Ê¹Óû§¸ù±¾²»¶® SQL µÄÓï·¨£¬Ò²¿ÉÒÔÖ´ÐÐÊý¾Ý¿âÈÎÎñ¡£


1.1.3 JDBC Óë ODBC ºÍÆäËü API µÄ±È½Ï

Ä¿Ç°£¬Microsoft µÄ ODBC£¨¿ª·ÅʽÊý¾Ý¿âÁ¬½Ó£©API ¿ÉÄÜÊÇʹÓÃ×î¹ãµÄ¡¢ÓÃÓÚ·ÃÎʹØϵÊý¾Ý¿âµÄ±à³Ì½Ó¿Ú¡£ËüÄÜÔÚ¼¸ºõËùÓÐƽ̨ÉÏÁ¬½Ó¼¸ºõËùÓе ÄÊý¾Ý¿â¡£ÎªÊ²Ã´Java ²»Ê¹Óà ODBC£¿

¶ÔÕâ¸öÎÊÌâµÄ»Ø´ðÊÇ£ºJava ¿ÉÒÔʹÓà ODBC£¬µ«×îºÃÊÇÔÚ JDBC µÄ°ïÖúÏÂÒÔJDBC-ODBC ÇŵÄÐÎʽʹÓã¬ÕâÒ»µãÎÒÃÇÉÔºóÔÙ˵¡£ÏÖÔÚµÄÎÊÌâÒѱä³É£º“ΪʲôÐèÒª JDBC”£¿ »Ø´ðÈçÏ£ºODBC ²»ÊʺÏÖ±½ÓÔÚ Java ÖÐʹÓã¬ÒòΪËüʹÓà C ÓïÑÔ½Ó¿Ú¡£´Ó Java µ÷Óñ¾µØ C ´úÂëÔÚ°²È«ÐÔ¡¢ÊµÏÖ¡¢¼á¹ÌÐԺͳÌÐòµÄ×Ô¶¯ÒÆÖ²ÐÔ·½Ã涼ÓÐÐí¶àȱµã¡£

´Ó ODBC C API µ½ Java API µÄ×ÖÃæ·­ÒëÊDz»¿ÉÈ¡µÄ¡£ÀýÈ磬Java ûÓÐÖ¸Õ룬¶ø ODBC È´¶ÔÖ¸ÕëÓõúܹ㷺£¨°üÀ¨ºÜÈÝÒ׳ö´íµÄÖ¸Õë "void *"£©¡£Äú¿ÉÒÔ½« JDBC ÏëÏó³É±»×ª»»ÎªÃæÏò¶ÔÏó½Ó¿ÚµÄ ODBC£¬¶øÃæÏò¶ÔÏóµÄ½Ó¿Ú¶Ô Java ³ÌÐòÔ±À´Ëµ½Ï
Ò×ÓÚ½ÓÊÕ¡£ODBC ºÜÄÑѧ¡£Ëü°Ñ¼òµ¥ºÍ¸ß¼¶¹¦ÄÜ»ìÔÚÒ»Æ𣬶øÇÒ¼´Ê¹¶ÔÓÚ¼òµ¥µÄ²éѯ£¬ÆäÑ¡ÏîÒ²¼«Îª¸´ÔÓ¡£Ïà·´£¬JDBC ¾¡Á¿±£Ö¤¼òµ¥¹¦Äܵļò±ãÐÔ£¬¶øͬʱÔÚ±ØҪʱÔÊÐíʹÓø߼¶¹¦ÄÜ¡£ÆôÓÓ´¿ Java ”»úÖÆÐèÒªÏó JDBC ÕâÑùµÄ Java API¡£Èç¹ûʹÓà ODBC£¬¾Í±ØÐëÊÖ¶¯µØ½« ODBC Çý¶¯³ÌÐò¹ÜÀíÆ÷ºÍÇý¶¯³ÌÐò°²×°ÔÚÿ̨¿Í»§»úÉÏ¡£Èç¹ûÍêÈ«Óà Java ±àд JDBC Çý¶¯³ÌÐòÔò JDBC ´úÂëÔÚËùÓÐ Java ƽ̨ÉÏ£¨´ÓÍøÂç¼ÆËã»úµ½´óÐÍ»ú£©¶¼¿ÉÒÔ×Ô¶¯°²×°¡¢ÒÆÖ²²¢±£Ö¤°²È«ÐÔ¡£

×ÜÖ®£¬JDBC API ¶ÔÓÚ»ù±¾µÄ SQL ³éÏóºÍ¸ÅÄîÊÇÒ»ÖÖ×ÔÈ»µÄ Java ½Ó¿Ú¡£Ëü½¨Á¢ÔÚ ODBC É϶ø²»ÊÇ´ÓÁ㿪ʼ¡£Òò´Ë£¬ÊìϤODBC µÄ³ÌÐòÔ±½«·¢ÏÖ JDBC ºÜÈÝÒ×ʹÓá£JDBC ±£ÁôÁË ODBC µÄ»ù±¾Éè¼ÆÌØÕ÷£»ÊÂʵÉÏ£¬Á½ÖÖ½Ó¿Ú¶¼»ùÓÚ X/Open SQL CLI£¨µ÷Óü¶½Ó¿Ú£©¡£ËüÃÇÖ®¼ä×î´óµÄÇø±ðÔÚÓÚ£ºJDBC ÒÔ Java ·ç¸ñÓëÓŵãΪ»ù´¡²¢½øÐÐÓÅ»¯£¬Òò´Ë¸ü¼ÓÒ×ÓÚʹÓá£

×î½ü£¬Microsoft ÓÖÒý½øÁË ODBC Ö®ÍâµÄРAPI£º RDO¡¢ ADO ºÍ OLE DB¡£ÕâЩÉè¼ÆÔÚÐí¶à·½ÃæÓë JDBC ÊÇÏàͬµÄ£¬¼´ËüÃǶ¼ÊÇÃæÏò¶ÔÏóµÄÊý¾Ý¿â½Ó¿ÚÇÒ»ùÓÚ¿ÉÔÚODBC ÉÏʵÏÖµÄÀà¡£µ«ÔÚÕâЩ½Ó¿ÚÖУ¬ÎÒÃÇδ¿´¼ûÓÐÌرðµÄ¹¦ÄÜʹÎÒÃÇҪת¶øÑ¡ÔñËüÃÇÀ´Ìæ´ú ODBC£¬ÓÈÆäÊÇÔÚ ODBC Çý¶¯³ÌÐòÒѽ¨Á¢Æð½ÏΪÍêÉƵÄÊг¡µÄÇé¿öÏ¡£ËüÃÇ×î¶àÒ²¾ÍÊÇÔÚ ODBC ÉϼÓÁËÒ»ÖÖ×°ÊζøÒÑ¡£Õâ²¢²»ÊÇ˵ JDBC ²»ÐèÒª´ÓÆä×î³õµÄ°æ±¾ÔÙ·¢Õ¹ÁË£»È»¶ø£¬ÎÒÃǾõµÃ´ó²¿·ÝµÄй¦ÄÜÓ¦¹éÈëÖîÈçÇ°Ò»½ÚÖÐËùÊöµÄ¶ÔÏó/¹ØϵӳÉäºÍǶÈëʽ SQL ÕâÑùµÄ¸ß¼¶ API¡£


1.1.4 Á½²ãÄ£ÐͺÍÈý²ãÄ£ÐÍ

JDBC API ¼ÈÖ§³ÖÊý¾Ý¿â·ÃÎʵÄÁ½²ãÄ£ÐÍ£¬Í¬Ê±Ò²Ö§³ÖÈý²ãÄ£ÐÍ¡£

ÔÚÁ½²ãÄ£ÐÍÖУ¬Java applet »òÓ¦ÓóÌÐò½«Ö±½ÓÓëÊý¾Ý¿â½øÐжԻ°¡£Õ⽫ÐèÒªÒ»¸ö JDBC Çý¶¯³ÌÐòÀ´ÓëËù·ÃÎʵÄÌض¨Êý¾Ý¿â¹Ü Àíϵͳ½øÐÐͨѶ¡£Óû§µÄ SQL Óï¾ä±»ËÍÍùÊý¾Ý¿âÖУ¬¶øÆä½á¹û½«±»ËͻظøÓû§¡£Êý¾Ý¿â¿ÉÒÔλÓÚÁíһ̨¼ÆËã»úÉÏ£¬Óû§Í¨¹ýÍøÂçÁ¬½Óµ½ÉÏÃæ¡£Õâ¾Í½Ð×ö¿Í»§»ú/·þÎñÆ÷ÅäÖã¬ÆäÖÐÓû§µÄ¼ÆËã»úΪ¿Í»§»ú£¬ÌṩÊý¾Ý¿âµÄ¼ÆËã»úΪ·þÎñÆ÷¡£ÍøÂç¿ÉÒÔÊÇ Intranet£¨Ëü¿É½«¹«Ë¾Ö°Ô±Á¬½ÓÆðÀ´£©£¬Ò²¿ÉÒÔÊÇ Internet¡£

ÔÚÈý²ãÄ£ÐÍÖУ¬ÃüÁîÏÈÊDZ»·¢Ë͵½·þÎñµÄ“Öмä²ã”£¬È»ºóÓÉËü½« SQL Óï¾ä·¢Ë͸øÊý¾Ý¿â¡£Êý¾Ý¿â¶Ô SQL Óï¾ä½øÐд¦Àí²¢½«½á¹ûËͻص½Öмä²ã£¬Öмä²ãÔÙ½«½á¹ûËͻظøÓû§¡£MIS Ö÷¹ÜÃǶ¼·¢ÏÖÈý²ãÄ£ÐͺÜÎüÒýÈË£¬ÒòΪ¿ÉÓÃÖмä²ãÀ´¿ØÖƶԹ«Ë¾Êý¾ÝµÄ·ÃÎʺͿÉ×÷µÄµÄ¸üеÄÖÖÀà¡£Öмä²ãµÄÁíÒ»¸öºÃ´¦ÊÇ£¬Óû§¿ÉÒÔÀûÓÃÒ×ÓÚʹÓõĸ߼¶API£¬¶øÖмä²ã½«°ÑËüת»»ÎªÏàÓ¦µÄµÍ¼¶µ÷Óá£×îºó£¬Ðí¶àÇé¿öÏÂÈý²ã½á¹¹¿ÉÌṩһЩÐÔÄÜÉϵĺô¦¡£




µ½Ä¿Ç°ÎªÖ¹£¬Öмä²ãͨ³£¶¼Óà C »ò C++ ÕâÀàÓïÑÔÀ´±àд£¬ÕâЩÓïÑÔÖ´ÐÐËٶȽϿ졣Ȼ¶ø£¬Ëæ×Å×îÓÅ»¯±àÒëÆ÷£¨Ëü°Ñ Java×Ö½Ú´úÂëת»»Îª¸ßЧµÄÌض¨ÓÚ»úÆ÷µÄ´úÂ룩µÄÒýÈ룬Óà Java À´ÊµÏÖÖмä²ã½«±äµÃÔ½À´Ô½Êµ¼Ê¡£Õ⽫ÊÇÒ»¸öºÜ´óµÄ½ø²½£¬ËüʹÈËÃÇ¿ÉÒÔ³ä·ÖÀûÓà Java µÄÖî¶àÓŵ㣨Èç¼á¹Ì¡¢¶àÏ̺߳Ͱ²È«µÈÌØÕ÷£©¡£JDBC¶ÔÓÚ´Ó Java µÄÖмä²ãÀ´·ÃÎÊÊý¾Ý¿â·Ç³£ÖØÒª¡£


1.1.5 SQL µÄÒ»ÖÂÐÔ

½á¹¹»¯²éѯÓïÑÔ (SQL) ÊÇ·ÃÎʹØϵÊý¾Ý¿âµÄ±ê×¼ÓïÑÔ¡£À§ÄÑÖ®´¦ÔÚÓÚ£ºËäÈ»´ó¶àÊýµÄ DBMS £¨Êý¾Ý¿â¹ÜÀíϵͳ£©¶ÔÆä»ù±¾¹¦Äܶ¼Ê¹ÓÃÁ˱ê×¼ÐÎʽµÄ SQL£¬µ«ËüÃÇÈ´²»·ûºÏ×î½üΪ¸ü¸ß¼¶µÄ¹¦Äܶ¨ÒåµÄ±ê×¼SQL Óï·¨»òÓïÒå¡£ÀýÈ磬²¢·ÇËùÓеÄÊý¾Ý¿â¶¼Ö§³Ö´¢´æ³ÌÐò»òÍⲿÁ¬½Ó£¬ÄÇЩ֧³ÖÕâÒ»¹¦ÄܵÄÊý¾Ý¿âÓÖÏ໥²»Ò»Ö¡£ÈËÃÇÏ£Íû SQL ÖÐÕæÕý±ê×¼µÄÄDz¿·ÝÄܹ»½øÐÐÀ©Õ¹ÒÔ°üÀ¨Ô½À´Ô½¶àµÄ¹¦ÄÜ¡£µ«Í¬Ê± JDBC API ÓÖ±ØÐëÖ§³ÖÏÖÓÐµÄ SQL¡£

JDBC API ½â¾öÕâ¸öÎÊÌâµÄÒ»ÖÖ·½·¨ÊÇÔÊÐí½«Èκβéѯ×Ö·û´®Ò»Ö±´«µ½ËùÉæ¼°µÄDBMS Çý¶¯³ÌÐòÉÏ¡£ÕâÒâζ×ÅÓ¦ÓóÌÐò¿ÉÒÔʹÓÃÈÎÒâ¶àµÄ SQL ¹¦ÄÜ£¬µ«Ëü±ØÐëðÕâÑùµÄ·çÏÕ£ºÓпÉÄÜÔÚijЩ DBMS Éϳö´í¡£ÊÂʵÉÏ£¬Ó¦ÓóÌÐò²éѯÉõÖÁ²»Ò»¶¨ÒªÊÇSQL£¬»òÕß˵Ëü¿ÉÒÔÊǸöΪÌض¨µÄ DBMS Éè¼ÆµÄ SQL µÄרÓÃÅÉÉúÎÀýÈ磬Îĵµ»òͼÏó²é£©¡£

JDBC ´¦Àí SQL Ò»ÖÂÐÔÎÊÌâµÄµÚ¶þÖÖ·½·¨ÊÇÌṩ ODBC ·ç¸ñµÄתÒå×Ӿ䡣Õ⽫ÔÚ4.1.5 ½Ú“Óï¾ä¶ÔÏóÖÐµÄ SQL תÒåÓï·¨”ÖÐÌÖÂÛ¡£

תÒåÓ﷨Ϊ¼¸¸ö³£¼ûµÄ SQL ·ÖÆçÌṩÁËÒ»ÖÖ±ê×¼µÄ JDBC Óï·¨¡£ÀýÈ磬¶ÔÈÕÆÚÎÄ×ÖºÍÒÑ´¢´æ¹ý³ÌµÄµ÷Óö¼ÓÐתÒåÓï·¨¡£

¶ÔÓÚ¸ ´ÔÓµÄÓ¦ÓóÌÐò£¬JDBC ÓõÚÈýÖÖ·½·¨À´´¦Àí SQL µÄÒ»ÖÂÐÔÎÊÌâ¡£ËüÀûÓÃDatabaseMetaData ½Ó¿ÚÀ´Ìṩ¹ØÓÚ DBMS µÄÃèÊöÐÔÐÅÏ¢£¬´Ó¶øʹӦÓóÌÐòÄÜÊÊӦÿ¸ö DBMS µÄÒªÇóºÍ¹¦ÄÜ¡£

ÓÉÓÚ JDBC API ½«ÓÃ×÷¿ª·¢¸ß¼¶Êý¾Ý¿â·ÃÎʹ¤¾ßºÍ API µÄ»ù´¡ API£¬Òò´ËËü»¹±ØÐë×¢ÒâÆäËùÓÐÉϲ㽨ÖþµÄÒ»ÖÂÐÔ¡£“·ûºÏJDBC ±ê×¼TM" ´ú±íÓû§¿ÉÒÀÀµµÄ JDBC ¹¦Äܵıê×¼¼¶±ð¡£ÒªÊ¹ÓÃÕâһ˵Ã÷£¬Çý¶¯³ÌÐòÖÁÉÙ±ØÐëÖ§³Ö ANSI SQL-2 EntryLevel£¨ANSI SQL-2 ´ú±íÃÀ¹ú¹ú¼Ò±ê×¼¾Ö 1992 ÄêËù²ÉÓõıê×¼¡£Entry Level ´ú±íSQL ¹¦ÄܵÄÌض¨Çåµ¥£©¡£Çý¶¯³ÌÐò¿ª·¢ÈËÔ±¿ÉÓà JDBC API Ëù´øµÄ²âÊÔ¹¤¾ß°üÀ´È·¶¨ËûÃǵÄÇý¶¯³ÌÐòÊÇ·ñ·ûºÏÕâЩ±ê×¼¡£

“·ûºÏ JDBC ±ê×¼TM” ±íʾÌṩÕßµÄ JDBC ʵÏÖÒѾ­Í¨¹ýÁË JavaSoft ÌṩµÄÒ»ÖÂÐÔ²âÊÔ¡£ÕâЩһÖÂÐÔ²âÊÔ½«¼ì²é JDBCAPI Öж¨ÒåµÄËùÓÐÀàºÍ·½·¨ÊÇ·ñ¶¼´æÔÚ£¬²¢¾¡¿ÉÄܵؼì²é³ÌÐòÊÇ·ñ¾ßÓÐ SQL Entry Level ¹¦ÄÜ¡£µ±È»£¬ÕâЩ²âÊÔ²¢²»ÍêÈ«£¬¶øÇÒ JavaSoft Ä¿Ç°Ò²ÎÞÒâ¶Ô¸÷ÌṩÕßµÄʵÏÖ½øÐб꼶¡£µ«ÕâÖÖÒ»ÖÂÐÔ¶¨ÒåµÄÈ·¿É¶ÔJDBC ʵÏÖÌṩһ¶¨µÄ¿ÉÐŶȡ£Ëæ×ÅÔ½À´Ô½¶àµÄÊý¾Ý¿âÌṩÕß¡¢Á¬½ÓÌṩÕß¡¢Internet ÌṩÕߺÍÓ¦ÓóÌÐò±à³ÌÔ±¶Ô JDBC API µÄ½ÓÊÜ£¬JDBC Ò²ÕýѸËÙ³ÉΪ JavaÊý¾Ý¿â·ÃÎʵıê×¼¡£


1.2 JDBC ²úÆ·

ÔÚ±àд±¾ÎÄʱ£¬Óм¸¸ö»ùÓÚ JDBC µÄ²úÆ·ÒÑ¿ª·¢Íê±Ï»òÕýÔÚ¿ª·¢ÖС£µ±È»£¬±¾½ÚÖеÄÐÅÏ¢½«ºÜ¿ì³ÉΪ¹ýʱÐÅÏ¢¡£Òò´Ë£¬ÓйØ×îеÄÐÅÏ¢£¬Çë²éÔÄ JDBC µÄÍøÕ¾£¬¿Éͨ¹ý´ÓÒÔÏ URL ¿ªÊ¼ä¯ÀÀÕÒµ½£º

http://java.sun.com/products/jdbc


1.2.1 JavaSoft ¿ò¼Ü

JavaSoft ÌṩÈýÖÖ JDBC ²úÆ·×é¼þ£¬ËüÃÇÊÇ Java ¿ª·¢¹¤¾ß°ü (JDK) µÄ×é³É²¿·Ý
£º


JDBC Çý¶¯³ÌÐò¹ÜÀíÆ÷£¬

JDBC Çý¶¯³ÌÐò²âÊÔ¹¤¾ß°ü£¬ºÍ

JDBC-ODBC ÇÅ¡£


JDBC Çý¶¯³ÌÐò¹ÜÀíÆ÷ÊÇ JDBC Ìåϵ½á¹¹µÄÖ§Öù¡£Ëüʵ¼ÊÉϺÜС£¬Ò²ºÜ¼òµ¥£»ÆäÖ÷Òª×÷ÓÃÊÇ°Ñ Java Ó¦ÓóÌÐòÁ¬½Óµ½ÕýÈ·µÄJDBC Çý¶¯³ÌÐòÉÏ£¬È»ºó¼´Í˳ö¡£

JDBC Çý¶¯³ÌÐò²âÊÔ¹¤¾ß°üΪʹ JDBC Çý¶¯³ÌÐòÔËÐÐÄúµÄ³ÌÐòÌṩһ¶¨µÄ¿ÉÐŶȡ£Ö»ÓÐͨ¹ý JDBC Çý¶¯³ÌÐò²âÊÔ°üµÄÇý¶¯³ÌÐò²Å±»ÈÏΪÊÇ·ûºÏ JDBC ±ê×¼TM µÄ¡£

JDBC-ODBC ÇÅʹ ODBC Çý¶¯³ÌÐò¿É±»ÓÃ×÷ JDBC Çý¶¯³ÌÐò¡£ËüµÄʵÏÖΪ JDBC µÄ¿ìËÙ·¢Õ¹ÌṩÁËÒ»Ìõ;¾¶£¬Æ䳤ԶĿ±êÌṩһÖÖ·ÃÎÊijЩ²»³£¼ûµÄ DBMS£¨Èç¹û¶ÔÕâЩ²»³£¼ûµÄ DBMS δʵÏÖ JDBC£© µÄ·½·¨¡£

1.2. 2 JDBC Çý¶¯³ÌÐòµÄÀàÐÍ

ÎÒÃÇÄ¿Ç°ËùÖªÏþµÄ JDBC Çý¶¯³ÌÐò¿É·ÖΪÒÔÏÂËĸöÖÖÀࣺ

JDBC-ODBC ÇÅ¼Ó ODBC Çý¶¯³ÌÐò£ºJavaSoft ÇŲúÆ·ÀûÓà ODBC Çý¶¯³ÌÐòÌṩ JDBC ·ÃÎÊ¡£×¢Ò⣬±ØÐ뽫 ODBC ¶þ½øÖÆ´úÂ루Ðí¶àÇé¿öÏ»¹°üÀ¨Êý¾Ý¿â¿Í»§»ú´úÂ룩¼ÓÔص½Ê¹ÓøÃÇý¶¯³ÌÐòµÄÿ¸ö¿Í»§»úÉÏ¡£Òò´Ë£¬ÕâÖÖÀàÐ͵ÄÇý¶¯³ÌÐò×îÊʺÏÓÚÆóÒµÍø£¨ÕâÖÖÍøÂçÉÏ¿Í»§»úµÄ°²×°²»ÊÇÖ÷ÒªÎÊÌ⣩£¬»òÕßÊÇÓà Java ±àдµÄÈý²ã½á¹¹µÄ
Ó¦ÓóÌÐò·þÎñÆ÷´úÂë¡£±¾µØ API - ²¿·ÝÓà Java À´±àдµÄÇý¶¯³ÌÐò£º ÕâÖÖÀàÐ͵ÄÇý¶¯³ÌÐò°Ñ¿Í»§»ú API É쵀 JDBC µ÷ÓÃת»»Îª Oracle¡¢Sybase¡¢Informix¡¢DB2 »òÆäËü DBMS µÄµ÷Óá£×¢Ò⣬ÏóÇÅÇý¶¯³ÌÐòÒ»Ñù£¬ÕâÖÖÀàÐ͵ÄÇý¶¯³ÌÐòÒªÇó½«Ä³Ð©¶þ½øÖÆ´úÂë¼ÓÔص½Ã¿Ì¨¿Í»§»úÉÏ¡£JDBC ÍøÂç´¿ Java Çý¶¯³ÌÐò£ºÕâÖÖÇý¶¯³ÌÐò½« JDBC ת»»ÎªÓë DBMS Î޹صÄÍøÂçЭÒ飬֮ºóÕâÖÖЭÒéÓÖ±»Ä³¸ö·þÎñÆ÷ת»»ÎªÒ»ÖÖ DBMS ЭÒé¡£ÕâÖÖÍøÂç·þÎñÆ÷Öмä¼þÄܹ»½«ËüµÄ´¿ Java ¿Í»§»úÁ¬½Óµ½¶àÖÖ²»Í¬µÄÊý¾Ý¿âÉÏ¡£ËùÓõľßÌåЭÒéÈ¡¾öÓÚÌṩÕß¡£Í¨³££¬ÕâÊÇ×îΪÁé»îµÄ JDBC Çý¶¯³ÌÐò¡£ÓпÉÄÜËùÓÐÕâÖÖ½â¾ö·½°¸µÄÌṩÕ߶¼ÌṩÊʺÏÓÚ Intranet ÓõIJúÆ·¡£ÎªÁËʹÕâЩ²úÆ·Ò²Ö§³Ö Internet ·ÃÎÊ£¬ËüÃDZØÐë´¦Àí Web ËùÌá³öµÄ°²È«ÐÔ¡¢Í¨¹ý·À»ðǽµÄ·ÃÎʵȷ½ÃæµÄ¶îÍâÒªÇó¡£¼¸¼ÒÌṩÕßÕý½« JDBC Çý¶¯³ÌÐò¼Óµ½ËûÃÇÏÖÓеÄÊý¾Ý¿âÖмä¼þ²úÆ·ÖС£±¾µØЭÒé´¿ Java Çý¶¯³ÌÐò£ºÕâÖÖÀàÐ͵ÄÇý¶¯³ÌÐò½« JDBC µ÷ÓÃÖ±½Óת»»ÎªDBMS ËùʹÓõÄÍøÂçЭÒé¡£Õ⽫ÔÊÐí´Ó¿Í»§»ú»úÆ÷ÉÏÖ±½Óµ÷Óà DBMS ·þÎñÆ÷£¬ÊÇ Intranet ·ÃÎʵÄÒ»¸öºÜʵÓõĽâ¾ö·½·¨¡£ÓÉÓÚÐí¶àÕâÑùµÄЭÒ鶼ÊÇרÓõģ¬Òò´ËÊý¾Ý¿âÌṩÕß×Ô¼º½«ÊÇÖ÷ÒªÀ´Ô´£¬Óм¸¼ÒÌṩÕßÒÑÔÚ×ÅÊÖ×öÕâ¼þÊÂÁË¡£×îºó£¬ÎÒÃÇÔ¤¼ÆµÚ 3¡¢4 ÀàÇý¶¯³ÌÐò½«³ÉΪ´Ó JDBC ·ÃÎÊÊý¾Ý¿âµÄÊ×Ñ¡·½·¨¡£µÚ1¡¢2 ÀàÇý¶¯³ÌÐòÔÚÖ±½ÓµÄ´¿ Java Çý¶¯³ÌÐò»¹Ã»ÓÐÉÏÊÐÇ°½«»á×÷Ϊ¹ý¶É·½°¸À´Ê¹Óá£¶ÔµÚ 1¡¢2 ÀàÇý¶¯³ÌÐò¿ÉÄÜ»áÓÐһЩ±äÖÖ£¨Ï±íÖÐδÁгö£©£¬ÕâЩ±äÖÖÒªÇóÓÐÁ¬½ÓÆ÷£¬µ«Í¨³£ÕâЩÊǸü¼Ó²»¿ÉÈ¡µÄ½â¾ö·½°¸¡£µÚ 3¡¢4 ÀàÇý¶¯³ÌÐòÌṩÁË Java µÄËùÓÐÓŵ㣬°üÀ¨×Ô¶¯°²×°£¨ÀýÈ磬ͨ¹ýʹ
Óà JDBC Çý¶¯³ÌÐòµÄ applet appletÀ´ÏÂÔظÃÇý¶¯³ÌÐò£©¡£

ϱíÏÔʾÁËÕâ 4 ÖÖÀàÐ͵ÄÇý¶¯³ÌÐò¼°ÆäÊôÐÔ£º


Çý¶¯³ÌÐòÖÖÀà ´¿ JAVA£¿ ÍøÂçЭÒé

1 - JDBC-OCBC ÇÅ ·Ç Ö±½Ó
2 - »ùÓÚ±¾µØ API µÄ ·Ç Ö±½Ó
3 - JDBC ÍøÂçµÄ ÊÇ ÒªÇóÁ¬½ÓÆ÷
4 - »ùÓÚ±¾µØЭÒéµÄ ÊÇ Ö±½Ó



1.2.3 JDBC Çý¶¯³ ÌÐòµÄ»ñÈ¡

ÔÚ±àд±¾ÎÄʱ£¬ÒÑÓм¸Ê®¸öÊôÓÚÖÖÀàµÄÇý¶¯³ÌÐò£¬¼´¿ÉÓë Javasoft ÇÅÁªºÏʹÓõÄ1: ODBC Çý¶¯³ÌÐòµÄÇý¶¯³ÌÐò¡£ÓдóԼʮ¶à¸öÊôÓÚÖÖÀà 2 µÄÇý¶¯³ÌÐòÊÇÒÔ DBMS µÄ±¾µØ API Ϊ»ù´¡±àдµÄ¡£Ö»Óм¸¸öÊôÓÚÖÖÀà 3 µÄÇý¶¯³ÌÐò¡£Ä¿Ç°ÖÁÉÙÓÐ 2 ¸öÊôÓÚÖÖÀà 4 µÄÇý¶¯³ÌÐò£¬µ«µ½ 1997 Äêµ×£¬ÎÒÃÇÔ¤¼ÆÖ÷ÒªµÄ DBMS ¶¼»áÓÐÖÖÀà4 µÄÇý¶¯³ÌÐò¡£

Òª»ñÈ¡¹ØÓÚÇý¶¯³ÌÐòµÄ×îÐÂÐÅÏ¢£¬Çë²éÔÄ JDBC µÄÍøÕ¾£¬ÆäÍøַΪ£º http://java.sun.com/products/jdbc¡£ÌṩµÚ 3 ÖÖÇý¶¯³ÌÐòµÄÊ×ÅúÌṩÕßÊÇ SCO¡¢Open Horizon¡¢Visigenic ºÍ WebLogic¡£JavaSoft ºÍÊý¾Ý¿âÁ¬½ÓµÄÁìÏÈÌṩÕß IntersolvºÏ×÷ÑÐÖÆÁË JDBC-ODBC ÇÅºÍ JDBC Çý¶¯³ÌÐò²âÊÔ¹¤¾ß°ü¡£


1.2.4 ÆäËü²úÆ·

¸÷ÖÖ JDBC Ó¦ÓóÌÐòµÄ¿ª·¢¹¤¾ßÕýÔÚ¿ª·¢ÖС£Çë×¢Òâ²éÔÄ JavaSoft ÍøÒ³ÒԵõ½¸üÐÂÐÅÏ¢
Java, java, J2SE, j2se, J2EE, j2ee, J2ME, j2me, ejb, ejb3, JBOSS, jboss, spring, hibernate, jdo, struts, webwork, ajax, AJAX, mysql, MySQL, Oracle, Weblogic, Websphere, scjp, scjd, scwcd ³ö×Ô£ºl
¡ü·µ»ØĿ¼
ǰһƪ: JDBC ¸ÅÊö£¨Èý£©
ºóһƪ: ÆÀÂÛ£º·Ö²¼Ê½²»Ö»ÊÇÒ»¸ö¸ÅÄî