ͨ¹ý·ÖÎöSQLÓï¾äµÄÖ´Ðмƻ®ÓÅ»¯SQL(Îå)
RowidµÄ¸ÅÄ
rowidÊÇÒ»¸öαÁУ¬¼ÈÈ»ÊÇαÁУ¬ÄÇôÕâ¸öÁоͲ»ÊÇÓû§¶¨Ò壬¶øÊÇϵͳ×Ô¼º¸ø¼ÓÉϵġ£¶Ôÿ¸ö±í¶¼ÓÐÒ»¸örowidµÄαÁУ¬µ«ÊDZíÖв¢²»ÎïÀí´æ´¢ROWIDÁеÄÖµ¡£²»¹ýÄã¿ÉÒÔÏñʹÓÃÆäËüÁÐÄÇÑùʹÓÃËü£¬µ«ÊDz»ÄÜɾ³ý¸ÄÁУ¬Ò²²»ÄܶԸÃÁеÄÖµ½øÐÐÐ޸ġ¢²åÈë¡£Ò»µ©Ò»ÐÐÊý¾Ý²åÈëÊý¾Ý¿â£¬ÔòrowidÔÚ¸ÃÐеÄÉúÃüÖÜÆÚÄÚÊÇΨһµÄ£¬¼´¼´Ê¹¸ÃÐвúÉúÐÐÇ¨ÒÆ£¬ÐеÄrowidÒ²²»»á¸Ä±ä¡£
ΪʲôʹÓÃROWID
rowid¶Ô·ÃÎÊÒ»¸ö±íÖеĸø¶¨µÄÐÐÌṩÁË×î¿ìµÄ·ÃÎÊ·½·¨£¬Í¨¹ýROWID¿ÉÒÔÖ±½Ó¶¨Î»µ½ÏàÓ¦µÄÊý¾Ý¿éÉÏ£¬È»ºó½«Æä¶Áµ½ÄÚ´æ¡£ÎÒÃÇ´´½¨Ò»¸öË÷Òýʱ£¬¸ÃË÷Òý²»µ«´æ´¢Ë÷ÒýÁеÄÖµ£¬¶øÇÒÒ²´æ´¢Ë÷ÒýÖµËù¶ÔÓ¦µÄÐеÄROWID£¬ÕâÑùÎÒÃÇͨ¹ýË÷Òý¿ìËÙÕÒµ½ÏàÓ¦ÐеÄROWIDºó£¬Í¨¹ý¸ÃROWID£¬¾Í¿ÉÒÔѸËÙ½«Êý¾Ý²éѯ³öÀ´¡£ÕâÒ²¾ÍÊÇÎÒÃÇʹÓÃË÷Òý²éѯʱ£¬ËٶȱȽϿìµÄÔÒò¡£
ÔÚORACLE8ÒÔǰµÄ°æ±¾ÖУ¬ROWIDÓÉFILE ¡¢BLOCK¡¢ROW NUMBER¹¹³É¡£Ëæ×Åoracle8ÖжÔÏó¸ÅÄîµÄÀ©Õ¹£¬ROWID·¢ÉúÁ˱仯£¬ROWIDÓÉOBJECT¡¢FILE¡¢BLOCK¡¢ROW NUMBER¹¹³É¡£ÀûÓÃDBMS_ROWID¿ÉÒÔ½«rowid·Ö½â³ÉÉÏÊöµÄ¸÷²¿·Ö£¬Ò²¿ÉÒÔ½«ÉÏÊöµÄ¸÷²¿·Ö×é³ÉÒ»¸öÓÐЧµÄrowid¡£
Recursive SQL¸ÅÄî
ÓÐʱΪÁËÖ´ÐÐÓû§·¢³öµÄÒ»¸ösqlÓï¾ä£¬Oracle±ØÐëÖ´ÐÐһЩ¶îÍâµÄÓï¾ä£¬ÎÒÃǽ«ÕâЩ¶îÍâµÄÓï¾ä³ÆÖ®Îª'recursive calls'»ò'recursive SQL statements'¡£Èçµ±Ò»¸öDDLÓï¾ä·¢³öºó£¬ORACLE×ÜÊÇÒþº¬µÄ·¢³öһЩrecursive SQLÓï¾ä£¬À´ÐÞ¸ÄÊý¾Ý×ÖµäÐÅÏ¢£¬ÒÔ±ãÓû§¿ÉÒԳɹ¦µÄÖ´ÐиÃDDLÓï¾ä¡£µ±ÐèÒªµÄÊý¾Ý×ÖµäÐÅϢûÓÐÔÚ¹²ÏíÄÚ´æÖÐʱ£¬¾³£»á·¢ÉúRecursive calls£¬ÕâЩRecursive calls»á½«Êý¾Ý×ÖµäÐÅÏ¢´ÓÓ²Å̶ÁÈëÄÚ´æÖС£Óû§²»±È¹ØÐÄÕâЩrecursive SQLÓï¾äµÄÖ´ÐÐÇé¿ö£¬ÔÚÐèÒªµÄʱºò£¬ORACLE»á×Ô¶¯µÄÔÚÄÚ²¿Ö´ÐÐÕâЩÓï¾ä¡£µ±È»DMLÓï¾äÓëSELECT¶¼¿ÉÄÜÒýÆðrecursive SQL¡£¼òµ¥µÄ˵£¬ÎÒÃÇ¿ÉÒÔ½«´¥·¢Æ÷ÊÓΪrecursive SQL¡£
Row Source(ÐÐÔ´)
ÓÃÔÚ²éѯÖУ¬ÓÉÉÏÒ»²Ù×÷·µ»ØµÄ·ûºÏÌõ¼þµÄÐеļ¯ºÏ£¬¼´¿ÉÒÔÊDZíµÄÈ«²¿ÐÐÊý¾ÝµÄ¼¯ºÏ£»Ò²¿ÉÒÔÊDZíµÄ²¿·ÖÐÐÊý¾ÝµÄ¼¯ºÏ£»Ò²¿ÉÒÔΪ¶ÔÉÏ2¸örow source½øÐÐÁ¬½Ó²Ù×÷(ÈçjoinÁ¬½Ó)ºóµÃµ½µÄÐÐÊý¾Ý¼¯ºÏ¡£
Predicate(ν´Ê)
Ò»¸ö²éѯÖеÄWHEREÏÞÖÆÌõ¼þ
Driving Table(Çý¶¯±í)
¸Ã±íÓÖ³ÆÎªÍâ²ã±í(OUTER TABLE)¡£Õâ¸ö¸ÅÄîÓÃÓÚǶÌ×ÓëHASHÁ¬½ÓÖС£Èç¹û¸Ãrow source·µ»Ø½Ï¶àµÄÐÐÊý¾Ý£¬Ôò¶ÔËùÓеĺóÐø²Ù×÷ÓиºÃæÓ°Ïì¡£×¢Òâ´Ë´¦ËäÈ»·ÒëΪÇý¶¯±í£¬µ«Êµ¼ÊÉÏ·ÒëΪÇý¶¯ÐÐÔ´(driving row source)¸üΪȷÇС£Ò»°ã˵À´£¬ÊÇÓ¦ÓòéѯµÄÏÞÖÆÌ
Ïà¹ØÎĵµ£º
µ³Ô±¹ÜÀíϵͳµÄÊý¾Ý¿âÉè¼Æ
ÐèÒªÒÔÏÂ×ֶΣº
l ѧÉú£º
//ѧÉú»ù±¾ÐÅÏ¢
u ѧÉúѧºÅ[id]£¨char£©Ö÷¼ü
u ѧÉúÉí·ÝÖ¤ºÅ[id_num]£¨char£©
u ѧÉúÐÕÃû[name]£¨char£©
u ѧÉú³öÉúÈÕÆÚ[born_date]£¨date£©
u ѧÉú¼®¹á[native]£¨int£©Íâ¼ü
u ѧÉú¼Òͥסַ[address]£¨char£©
u&nbs ......
/***************************************************
×÷Õߣºherowang(ÈÃÄãÍû¼ûÓ°×ÓµÄǽ£©
ÈÕÆÚ£º2009.12.19
×¢£º ×ªÔØÇë±£Áô´ËÐÅÏ¢
&nb ......
Á¬½ÓAccess
Ê×ÏÈ¿´Ò»¸öÀý×Ó´úÂëÆ¬¶Ï:
³ÌÐò´úÂë:
--------------------------------------------------------------------------------
using System.Data;
using System.Data.OleDb;
......
string strConnection="Provider=Microsoft.Jet.OleDb.4.0;";
strConnection+=@"Data Source=C:\BegASPNET\Northwind.mdb" ......
×öÊý¾Ý¿â¿ª·¢»ò¹ÜÀíµÄÈ˾³£Òª´´½¨´óÁ¿µÄ²âÊÔÊý¾Ý£¬¶¯²»¶¯¾ÍÐèÒªÉÏÍòÌõ£¬Èç¹ûÒ»ÌõÒ»ÌõµÄ¼È룬ÄÇ»áÀË·Ñ´óÁ¿µÄʱ¼ä£¬±¾ÎĽéÉÜÁËOracleÖÐÈçºÎͨ¹ýÒ»ÌõSQL¿ìËÙÉú³É´óÁ¿µÄ²âÊÔÊý¾ÝµÄ·½·¨¡£
²úÉú²âÊÔÊý¾ÝµÄSQLÈçÏ£º
SQL> select rownum as id,
2 &nb ......
Sql Server ÖÐÒ»¸ö·Ç³£Ç¿´óµÄÈÕÆÚ¸ñʽ»¯º¯Êý
:
Select CONVERT(varchar(100), GETDATE(), 0): 05 16 2006 10:57AM
Select CONVERT(varchar(100), GETDATE(), 1): 05/16/06
Select CONVERT(varchar(100), GETDATE(), 2): 06.05.16
Select CONVERT(varchar(100), GETDATE(), 3): 16/05/06
Select CONVERT(varchar(100), ......