ͨ¹ý·ÖÎöSQLÓï¾äµÄÖ´Ðмƻ®ÓÅ»¯SQL(ËÄ)
Î壺 ORACLEµÄÖ´Ðмƻ®
±³¾°ÖªÊ¶£ºÎªÁ˸üºÃµÄ½øÐÐÏÂÃæµÄÄÚÈÝÎÒÃDZØÐëÁ˽âһЩ¸ÅÄîÐÔµÄÊõÓ
¹²ÏísqlÓï¾ä
ΪÁ˲»Öظ´½âÎöÏàͬµÄSQLÓï¾ä(ÒòΪ½âÎö²Ù×÷±È½Ï·Ñ×ÊÔ´£¬»áµ¼ÖÂÐÔÄÜϽµ)£¬ÔÚµÚÒ»´Î½âÎöÖ®ºó£¬ORACLE½«SQLÓï¾ä¼°½âÎöºóµÃµ½µÄÖ´Ðмƻ®´æ·ÅÔÚÄÚ´æÖС£Õâ¿éλÓÚϵͳȫ¾ÖÇøÓòSGA(system global area)µÄ¹²Ïí³Ø(shared buffer pool)ÖеÄÄÚ´æ¿ÉÒÔ±»ËùÓеÄÊý¾Ý¿âÓû§¹²Ïí¡£Òò´Ë£¬µ±ÄãÖ´ÐÐÒ»¸öSQLÓï¾ä(ÓÐʱ±»³ÆÎªÒ»¸öÓαê)ʱ£¬Èç¹û¸ÃÓï¾äºÍ֮ǰµÄÖ´ÐйýµÄijһÓï¾äÍêÈ«Ïàͬ£¬²¢ÇÒ֮ǰִÐеĸÃÓï¾äÓëÆäÖ´Ðмƻ®ÈÔÈ»ÔÚÄÚ´æÖдæÔÚ£¬ÔòORACLE¾Í²»ÐèÒªÔÙ½øÐзÖÎö£¬Ö±½ÓµÃµ½¸ÃÓï¾äµÄÖ´Ðз¾¶¡£ORACLEµÄÕâ¸ö¹¦ÄÜ´ó´óµØÌá¸ßÁËSQLµÄÖ´ÐÐÐÔÄܲ¢´ó´ó½ÚÊ¡ÁËÄÚ´æµÄʹÓá£Ê¹ÓÃÕâ¸ö¹¦ÄܵĹؼüÊǽ«Ö´ÐйýµÄÓï¾ä¾¡¿ÉÄܷŵ½ÄÚ´æÖУ¬ËùÒÔÕâÒªÇóÓдóµÄ¹²Ïí³Ø(ͨ¹ýÉèÖÃshared buffer pool²ÎÊýÖµ)ºÍ¾¡¿ÉÄܵÄʹÓð󶨱äÁ¿µÄ·½·¨Ö´ÐÐSQLÓï¾ä¡£
µ±ÄãÏòORACLE Ìá½»Ò»¸öSQLÓï¾ä£¬ORACLE»áÊ×ÏÈÔÚ¹²ÏíÄÚ´æÖвéÕÒÊÇ·ñÓÐÏàͬµÄÓï¾ä¡£ÕâÀïÐèҪעÃ÷µÄÊÇ£¬ORACLE¶ÔÁ½Õß²ÉÈ¡µÄÊÇÒ»ÖÖÑϸñÆ¥Å䣬Ҫ´ï³É¹²Ïí£¬SQLÓï¾ä±ØÐëÍêÈ«Ïàͬ(°üÀ¨¿Õ¸ñ,»»ÐеÈ)¡£
ÏÂÃæÊÇÅжÏSQLÓï¾äÊÇ·ñÓë¹²ÏíÄÚ´æÖÐijһSQLÏàͬµÄ²½Ö裺
1. ¶ÔËù·¢³öÓï¾äµÄÎı¾´®½øÐÐhashed¡£Èç¹ûhashÖµÓëÒÑÔÚ¹²Ïí³ØÖÐSQLÓï¾äµÄhashÖµÏàͬ£¬Ôò½øÐеÚ2²½£º
2.½«Ëù·¢³öÓï¾äµÄÎı¾´®£¨°üÀ¨´óСд¡¢¿Õ°×ºÍ×¢ÊÍ£©ÓëÔÚµÚ£±²½ÖÐʶ±ðµÄËùÓÐ
ÒÑ´æÔÚµÄSQLÓï¾äÏà±È½Ï¡£
ÀýÈ磺
SELECT * from emp WHERE empno = 1000;
ºÍÏÂÁÐÿһ¸ö¶¼²»Í¬
SELECT * from emp WHERE empno = 1000;
SELECT * from EMP WHERE empno = 1000;
SELECT * from emp WHERE empno = 2000;
ÔÚÉÏÃæµÄÓï¾äÖÐÁÐÖµ¶¼ÊÇÖ±½ÓSQLÓï¾äÖе쬽ñºóÎÒÃǽ«ÕâÀàsql³ÉΪӲ±àÂëSQL
»ò×ÖÃæÖµSQL
ʹÓð󶨱äÁ¿µÄSQLÓï¾äÖбØÐëʹÓÃÏàͬµÄÃû×ֵİ󶨱äÁ¿(bind variables) £¬
ÀýÈ磺
a. ¸Ã2¸ösqlÓï¾ä±»ÈÏΪÏàͬ
select pin , name from people where pin = :blk1.pin;
select pin , name from people where pin = :blk1.pin;
b. ¸Ã2¸ösqlÓï¾ä±»ÈÏΪ²»Ïàͬ
select pin , name from people where pin = :blk1.ot_ind;
select pin , name from people where pin = :blk1.ov_ind;
½ñºóÎÒÃǽ«ÉÏÃæµÄÕ
Ïà¹ØÎĵµ£º
create PROCEDURE pagelist
@tablename nvarchar(50),
@fieldname nvarchar(50)='*',
@pagesize int output,--ÿҳÏÔʾ¼Ç¼ÌõÊý
@currentpage int output,--µÚ¼¸Ò³
@orderid nvarchar(50),--Ö÷¼üÅÅÐò
@sort int,--ÅÅÐò·½Ê½£¬1±íʾÉýÐò£¬0±íʾ½µÐòÅÅÁÐ
......
sysaltfiles ÔÚmasterÊý¾Ý¿âÖУ¬°üº¬ÓëÊý¾Ý¿âÎļþÏà¶ÔÓ¦µÄÐÅÏ¢£¬°üº¬ËùÓÐÊý¾Ý¿âµÄÊý¾ÝÎļþÒÔ¼°ÈÕÖ¾Îļþ
ÁÐÃûÊý¾ÝÀàÐÍÃèÊö
fileid
smallint
ÿ¸öÊý¾Ý¿âµÄΨһÎļþ±êʶºÅ¡£1´ú±íÊý¾ÝÎļþ£¬2´ú±íÈÕÖ¾Îļþ
groupid
smallint
Îļþ×é±êʶºÅ¡£
size
int
Îļþ´óС£¨ÒÔ 8 KB ҳΪµ¥Î»£©¡£Ò³µÄÊýÄ¿
maxsize
......
SQL¿Í»§¶ËÊÇÿ¸ö¿ª·¢ÈËÔ±ËùÐèµÄ±Ø²»¿ÉÉٵŤ¾ß¡£ËûÃǰïÖú¿ª·¢ÈËÔ±ÇáËɵØÔÚÈκÎÊý¾Ý¿âÖ´ÐÐSQL²éѯ¡£ËüÃǶÔÓÚ½â¾öÈκÎÊý¾Ý¿âÏà¹ØµÄÎÊÌâÒ²ÊǷdz£ÖØÒªµÄ¡£
1. SQuirreL SQL Client
SQuirreL SQL ClientÊÇĿǰ×îÁ÷ÐеĿªÔ´SQL¿Í»§¶Ë¡£ ......
ÔÚÊý¾Ý¿âµÄÈÕ³£Î¬»¤ÖУ¬µ÷Õû¸ö±ðÐÔÄܽϲîµÄSQLÓï¾äÊÇÒ»Ï¸»ÌôÕ½ÐԵŤ×÷¡£ÆäÖеĹؼüÔÚÓÚÈçºÎµÃµ½SQLÓï¾äµÄÖ´Ðмƻ®ºÍÈçºÎ´ÓSQLÓï¾äµÄÖ´Ðмƻ®Öз¢ÏÖÎÊÌâ¡£×ÜÊÇÏ뽫ÈÕ³£¾ÑéµÄµãµãµÎµÎ×ܽáһϣ¬µ«ÊÇÖ±µ½×î½ü²Å϶¨¾öÐÄ£¬×ܹ²»¨ÁË3¸öÖÜĩʱ¼ä£¬²Å½«ÆäÕûÀí³É²á£¬±ãÓÚ×Ô¼ºÈÕ³£¹¤×÷¡£ÏÖÔÚ½«Æä·¢±í³öÀ´Ï£ÍûÄÜÓë¸ü¶àµÄÅóÓÑ·Ö ......
ÎÒÃÇÒª×öµ½²»µ«»áдSQL,»¹Òª×öµ½Ð´³öÐÔÄÜÓÅÁ¼µÄSQL,ÒÔÏÂΪ±ÊÕßѧϰ¡¢ÕªÂ¼¡¢²¢»ã×ܲ¿·Ö×ÊÁÏÓë´ó¼Ò·ÖÏí£¡
£¨1£©Ñ¡Ôñ×îÓÐЧÂʵıíÃû˳Ðò(Ö»ÔÚ»ùÓÚ¹æÔòµÄÓÅ»¯Æ÷ÖÐÓÐЧ)£º
orACLEµÄ½âÎöÆ÷°´ÕÕ´ÓÓÒµ½×óµÄ˳Ðò´¦Àífrom×Ó¾äÖеıíÃû£¬from×Ó¾äÖÐдÔÚ×îºóµÄ±í(»ù´¡±í driving table)½«±»×îÏÈ´¦Àí£¬ÔÚfrom×Ó¾äÖаüº¬¶à¸ö±íµÄÇé¿öÏ ......