OracleÖÐSQLÓï¾ä½âÎöµÄ²½Öè
ÎÒÃǶ¼ÖªµÀÔÚOracleÖÐÿÌõSQLÓï¾äÔÚÖ´ÐÐ֮ǰ¶¼ÐèÒª¾¹ý½âÎö£¬ÕâÀïÃæÓÖ·ÖΪÈí½âÎöºÍÓ²½âÎö¡£ÄÇôÕâÁ½ÖÖ½âÎöÓкβ»Í¬Ö®´¦ÄØ£¿ËüÃÇÓÖ·Ö±ðÊÇÈçºÎ½øÐнâÎöÄØ£¿OracleÄÚ²¿½âÎöµÄ²½ÖèÓÖÊÇÈçºÎ½øÐеÄÄØ£¿ÏÂÃæÎÒÃǾÍÕâЩ»°Ìâ½øÐй²Í¬Ì½ÌÖ¡£ ÔÚOracleÖдæÔÚÁ½ÖÖÀàÐ͵ÄSQLÓï¾ä£¬Ò»ÀàΪDDLÓï¾ä£¬ËûÃÇÊÇ´ÓÀ´²»»á¹²ÏíʹÓõģ¬Ò²¾ÍÊÇÿ´ÎÖ´Ðж¼ÐèÒª½øÐÐÓ²½âÎö¡£»¹ÓÐÒ»Àà¾ÍÊÇDMLÓï¾ä£¬ËûÃÇ»á¸ù¾ÝÇé¿öÑ¡ÔñҪô½øÐÐÓ²½âÎö£¬ÒªÃ´½øÐÐÈí½âÎö¡£ÔÚOracle 8i OCP½Ì²ÄµÄ023ÖÐ1-12ÓÐ˵Ã÷SQLÓï¾äµÄ½âÎö²½Ö裬µ±Ò»ÌõSQLÓï¾ä´Ó¿Í»§¶Ë½ø³Ì´«µÝµ½·þÎñÆ÷¶Ë½ø³Ìºó£¬ÐèÒªÖ´ÐÐÈçϲ½Ö裺
• ÔÚ¹²Ïí³ØÖÐËÑË÷ SQL Óï¾äµÄÏÖÓи±±¾
• ÑéÖ¤ SQL Óï¾äµÄÓï·¨ÊÇ·ñ׼ȷ
• Ö´ÐÐÊý¾Ý×Öµä²éÕÒÀ´ÑéÖ¤±íºÍÁе͍Òå
• »ñÈ¡¶ÔÏóµÄ·ÖÎöËøÒÔ±ãÔÚÓï¾äµÄ·ÖÎö¹ý³ÌÖжÔÏóµÄ¶¨Òå²»»á¸Ä±ä
• ¼ì²éÓû§·ÃÎÊÒýÓ÷½°¸¶ÔÏóµÄȨÏÞ
• È·¶¨Óï¾äµÄ×î¼ÑÖ´Ðмƻ®
• ½«Óï¾äºÍÖ´Ðмƻ®ÔØÈë¹²ÏíµÄ SQL Çø
Õâ¸öÏÈÈëΪÖ÷µÄ¸ÅÄîÒ»Ö±Õ¼¾Ý×ÅÎÒµÄÄÔº££¬ÎÒÈÏΪӲ½âÎö¾ÍÊÇÉÏÃæ¼¸¸ö²½Öè¡£Ïà¶ÔÓÚÓ²½âÎö£¬Èí½âÎöµÄ²½Öè¾ÍÊÇÉÏÃæµÚÒ»²½ÕÒµ½ÏÖÓÐSQLÓï¾äµÄ¸±±¾ºó£¬Ö»ÐèÒªÑéÖ¤Óû§ÊÇ·ñÓÐȨÏÞÖ´ÐоÍÊÇÁË£¬ÕâÑùÊ¡ÂÔÉÏÃæºÃ¼¸¸ö²½Ö裬Ïà¶ÔÓ²½âÎöÀ´ËµÐÔÄÜ¿ªÏú¾Í·Ç³£Ð¡ÁË¡£¼´Ê¹ÊÇÔÚÂÛ̳ÉϺʹó¼ÒÌÖÂÛʱ£¬ÎÒÒ²Ò»Ö±¼á³ÖÕâ¸ö¿´·¨¡£Ö±µ½Ç°Ò»Ìì¿´ÁËTomµÄ¡¶Effective Oracle By Design¡·ÖйØÓÚÓï¾ä´¦ÀíµÄÕ½ںó£¬ÎÒ²ÅÖªµÀÕâ¸ö×Ô¼ºÒ»Ö±¼á³ÖµÄ¹ÛµãÊÂʵÉÏÊÇ´íÎóµÄ¡£
ÊÂʵÉÏ£¬ÔÚOracleÖÐSQLÓï¾äµÄ½âÎö²½ÖèÈçÏ£º
1¡¢ Óï·¨¼ì²â¡£ÅжÏÒ»ÌõSQLÓï¾äµÄÓï·¨ÊÇ·ñ·ûºÏSQLµÄ¹æ·¶£¬±ÈÈçÖ´ÐУºSQL> selet * from emp£»ÎÒÃǾͿÉÒÔ¿´³öÓÉÓÚSelect¹Ø¼ü×ÖÉÙÁËÒ»¸ö“c”£¬ÕâÌõÓï¾ä¾ÍÎÞ·¨Í¨¹ýÓï·¨¼ìÑéµÄ²½ÖèÁË¡£
2¡¢ ÓïÒå¼ì²é¡£Óï·¨ÕýÈ·µÄSQLÓï¾äÔÚ½âÎöµÄµÚ¶þ¸ö²½Öè¾ÍÊÇÅжϸÃSQLÓï¾äËù·ÃÎÊµÄ±í¼°ÁÐÊÇ·ñ׼ȷ£¿Óû§ÊÇ·ñÓÐȨÏÞ·ÃÎÊ»ò¸ü¸ÄÏàÓ¦µÄ±í»òÁУ¿±ÈÈçÈçÏÂÓï¾ä£º
SQL> select * from emp;
select * from emp
*
ERROR at line 1:
ORA-00942: table or view does not exist
ÓÉÓÚ²éѯÓû§Ã»Óпɹ©·ÃÎʵÄemp¶ÔÏó£¬Òò´Ë¸ÃSQLÓï¾äÎÞ·¨Í¨¹ýÓïÒå¼ì²é¡£
3¡¢ ¼ì²é¹²Ïí³ØÖÐÊÇ·ñÓÐÏàͬµÄÓï¾ä´æÔÚ¡£¼ÙÈçÖ´ÐеÄSQLÓï¾äÒѾÔÚ¹²Ïí³ØÖдæÔÚͬÑùµÄ¸±±¾£¬ÄÇô¸ÃSQLÓï¾ä½«»á±»Èí½âÎö£¬Ò²¾ÍÊÇ¿ÉÒÔÖØÓÃÒѽâÎö¹ýµÄÓï¾äµÄÖ´Ðмƻ®ºÍÓÅ»¯·½°¸£¬¿ÉÒÔºöÂÔÓï¾ä½âÎö¹ý³ÌÖÐ×îºÄ·Ñ×ÊÔ´µÄ²½Ö裬ÕâÒ²ÊÇÎÒÃÇΪʲôһֱǿµ÷±
Ïà¹ØÎĵµ£º
ϵͳ»·¾³£ºWindows 7
Èí¼þ»·¾³£ºVisual C++ 2008 SP1 +SQL Server 2005
±¾´ÎÄ¿µÄ£º±àдһ¸öº½¿Õ¹ÜÀíϵͳ
ÕâÊÇÊý¾Ý¿â¿Î³ÌÉè¼ÆµÄ³É¹û£¬ËäÈ»³É¼¨²»¼Ñ£¬µ«ÊÇ×÷ΪÎÒÓÃVC++ ÒÔÀ´±àдµÄ×î´ó³ÌÐò»¹ÊÇ´«µ½ÍøÉÏ£¬ÒÔ¹©²Î¿¼¡£ÓÃVC++ ×öÊý¾Ý¿âÉè¼Æ²¢²»ÈÝÒ×£¬µ«Ò²²»ÊDz»¿ÉÄÜ¡£ÒÔÏÂÊÇÎҵijÌÐò½çÃæ£¬ºóÃæ ......
1¡¢»ù±¾Óï·¨
SELECT
from
WHERE
GROUP BY
HAVING
ORDER BY
SELECT:²éѯµÄ×Ö¶Î
1¡¢¿ÉÓÃ*±íʾËùÓÐ×ֶΡ£
2¡¢×Ö¶ÎÖ®¼äÓöººÅ·Ö¸î¡£
3¡¢¿ÉΪ×Ö¶ÎÆð±ðÃû Æä±ðÃû¿Éд³ÉSELECT AAAA¡£AA AS SS »ò AAAA¡£AA SS ¿ÉÊ¡ÂÔas
4¡¢¿ÉÖ±½Óд×Ö¶ÎÖµ£ºÈç SELECT AAAA¡£AA SS,'ÕÅÈý' NAME from ¡£¡£¡£
from:²éѯµÄ±íÃû
1¡¢±íà ......
--------------------ÏÔʽÓαê
--²éѯÊý¾Ý
select * from employees;
--¶¨Ò岿·Ö
declare
--ÉùÃ÷Óαê
cursor mycur is select * from employees where employee_id<120;
--¶¨ÒåÒ»¸ö¼¯ºÏ±äÁ¿ÓÃÓ ......
²éѯËÙ¶ÈÂýµÄÔÒòºÜ¶à£¬³£¼ûÈçϼ¸ÖÖ£º
¡¡¡¡1¡¢Ã»ÓÐË÷Òý»òÕßûÓÐÓõ½Ë÷Òý(ÕâÊDzéѯÂý×î³£¼ûµÄÎÊÌ⣬ÊdzÌÐòÉè¼ÆµÄȱÏÝ)
¡¡¡¡2¡¢I/OÍÌÍÂÁ¿Ð¡£¬ÐγÉÁËÆ¿¾±Ð§Ó¦¡£
¡¡¡¡3¡¢Ã»Óд´½¨¼ÆËãÁе¼Ö²éѯ²»ÓÅ»¯¡£
¡¡¡¡4¡¢ÄÚ´æ²»×ã
¡¡¡¡5¡¢ÍøÂçËÙ¶ÈÂý
¡¡¡¡6¡¢²éѯ³öµÄÊý¾ÝÁ¿¹ý´ó(¿ÉÒÔ²ÉÓöà´Î²éѯ£¬ÆäËûµÄ·½·¨½µµÍÊý¾ÝÁ¿)
¡¡¡¡7¡¢ ......