OracleÖÐCursor½éÉÜ
¹Ø¼ü×Ö
¸ÅÄî
ÀàÐÍ
Òì³£´¦Àí
Ò» ¸ÅÄî
ÓαêÊÇSQLµÄÒ»¸öÄڴ湤×÷Çø£¬ÓÉϵͳ»òÓû§ÒÔ±äÁ¿µÄÐÎʽ¶¨Òå¡£ÓαêµÄ×÷ÓþÍÊÇÓÃÓÚÁÙʱ´æ´¢´ÓÊý¾Ý¿âÖÐÌáÈ¡µÄÊý¾Ý¿é¡£ÔÚijЩÇé¿öÏ£¬ÐèÒª°ÑÊý¾Ý´Ó´æ·ÅÔÚ´ÅÅ̵ıíÖе÷µ½¼ÆËã»úÄÚ´æÖнøÐд¦Àí£¬×îºó½«´¦Àí½á¹ûÏÔʾ³öÀ´»ò×îÖÕд»ØÊý¾Ý¿â¡£ÕâÑùÊý¾Ý´¦ÀíµÄËٶȲŻáÌá¸ß£¬·ñÔòƵ·±µÄ´ÅÅÌÊý¾Ý½»»»»á½µµÍЧÂÊ¡£
¶þ ÀàÐÍ
CursorÀàÐͰüº¬ÈýÖÖ: ÒþʽCursor£¬ÏÔʽCursorºÍRef Cursor£¨¶¯Ì¬Cursor£©¡£
1£® ÒþʽCursor:
1).¶ÔÓÚSelect …INTO…Óï¾ä£¬Ò»´ÎÖ»ÄÜ´ÓÊý¾Ý¿âÖлñÈ¡µ½Ò»ÌõÊý¾Ý£¬¶ÔÓÚÕâÖÖÀàÐ͵ÄDML SqlÓï¾ä£¬¾ÍÊÇÒþʽCursor¡£ÀýÈ磺Select /Update / Insert/Delete²Ù×÷¡£
2)×÷Ó㺿ÉÒÔͨ¹ýÒþʽCusorµÄÊôÐÔÀ´Á˽â²Ù×÷µÄ״̬ºÍ½á¹û£¬´Ó¶ø´ïµ½Á÷³ÌµÄ¿ØÖÆ¡£CursorµÄÊôÐÔ°üº¬£º
SQL%ROWCOUNT ÕûÐÍ ´ú±íDMLÓï¾ä³É¹¦Ö´ÐеÄÊý¾ÝÐÐÊý
SQL%FOUND ²¼¶ûÐÍ ÖµÎªTRUE´ú±í²åÈ롢ɾ³ý¡¢¸üлòµ¥Ðвéѯ²Ù×÷³É¹¦
SQL%NOTFOUND ²¼¶ûÐÍ ÓëSQL%FOUNDÊôÐÔ·µ»ØÖµÏà·´
SQL%ISOPEN ²¼¶ûÐÍ DMLÖ´Ðйý³ÌÖÐÎªÕæ£¬½áÊøºóΪ¼Ù
3) ÒþʽCursorÊÇϵͳ×Ô¶¯´ò¿ªºÍ¹Ø±ÕCursor.
ÏÂÃæÊÇÒ»¸öSample£º
Sql´úÂë < type="application/x-shockwave-flash" width="14" height="15" src="http://www.javaeye.com/javascripts/syntaxhighlighter/clipboard_new.swf" pluginspage="http://www.macromedia.com/go/getflashplayer" allowscriptaccess="always" quality="high" flashvars="clipboard=Set%20Serveroutput%20on%3B%0A%0Abegin%0A%20%20%20%20update%20t_contract_master%20set%20liability_state%20%3D%201%20where%20policy_code%20%3D%20'123456789'%3B%0A%20%20%20%20%0A%20%20%20%20if%20SQL%25Found%20then%0A%20%20%20%20%20%20%20dbms_output.put_line('the%20Policy%20is%20updated%20successfully.')%3B%0A%20%20%20%20%20%20%20commit%3B%0A%20%20%20%20else%0A%20%20%20%20%20%20dbms_output.put_line('the%20policy%20is%20updated%20failed.')%3B%0A%20%20%20%20end%20if%3B%0A%0Aend%3B%0A%0A%2F">
Set Serveroutput on;
begin
update t_contract_master&nbs
Ïà¹ØÎĵµ£º
¡¡¡¡ÔÚʹÓÃOracle Instance Manager´´½¨Ò»Êý¾Ý¿âʵÀýµÄʱºî£¬ÔÚORACLE_HOME\DATABASEĿ¼Ï»¹×Ô¶¯´´½¨ÁËÒ»¸öÓëÖ®¶ÔÓ¦µÄÃÜÂëÎļþ£¬ÎļþÃûΪPWDSID.ORA£¬ÆäÖÐSID´ú±íÏàÓ¦µÄOracleÊý¾Ý¿âϵͳ±êʶ·û¡£´ËÃÜÂëÎļþÊǽøÐгõʼÊý¾Ý¿â¹ÜÀí¹¤×÷µÄ»ù´¡¡£ÔÚ´ËÖ®ºó£¬¹ÜÀíÔ±Ò²¿ÉÒÔ¸ù¾ÝÐèÒª£¬Ê¹Óù¤¾ßORAPWD.EXEÊÖ¹¤´´½¨ÃÜÂëÎļþ£¬ÃüÁî¸ñʽ ......
ÈçͼËùʾ£¬queryÓï¾äÖÐÈç¹ûûÓÐд \ £¬»á³öÏÖ£º
LRM-00112: ²ÎÊý 'query' ²»ÔÊÐíÓжà¸öÖµ
EXP-00019: ´¦Àí²ÎÊýʧ°Ü£¬ÓйذïÖúÇë¼üÈë 'EXP HELP=Y'
EXP-00000: µ¼³öÖÕֹʧ°Ü
exp system/system@oracledb file=d:\daochu.dmp tables=(store.jobs) query='where jobs.job like "w%"'
ÕâÑùÖ´ÐÐÈÔÈ»Èçͼʾ£¬¸ÃÔõô½â¾öÄØ£ ......
ÏÈÀ´Á˽âϼ¸¸öÓ¢Îĵļò³Æ£¬ÔÚÒÔºó¾³£»á¼ûµ½¡£
¶ÔÏó¹ØÏµÊý¾Ý¿â¹ÜÀíϵͳ£¨Object Relational Database Management System£¬¼ò³ÆORDBMS£©
¹ØÏµÊý¾Ý¿â¹ÜÀíϵͳ£¨Relational Database Management System£¬¼ò³ÆRDBMS£©
Êý¾Ý¿â¹ÜÀíϵͳ£¨Database Management System£¬¼ò³ÆDBMS£©
½á¹¹»¯²éѯÓïÑÔ£¨Structured Query Langua ......
ÊÖ¶¯½¨¿âÆäʵҲ¿ÉÒÔ·ÖΪÁ½ÖÖ£¬Ò»ÖÖÊDz»Ê¹ÓÃOMF´´½¨£¬ÁíÒ»ÖÖÊÇʹÓÃOMF´´½¨¡£
Ò»¡¢²»Ê¹ÓÃOMFÊÖ¶¯´´½¨Êý¾Ý¿â
1¡¢´´½¨Îļþ¼Ð¡££¨¸ù¾Ý¸Õ²Å/ora01/db/oracle/admin/ocpÖеÄĿ¼£¬ÎÒÃÇҲͬÑù´´½¨£©
?[Copy to clipboard]View Code BASH
$ mkdir /ora01/db/oracle/admin/mydb
$ cd /ora01/db/oracle/admin/mydb
$ mkdir bdum ......
Ò»¡¢»ù±¾µÄOracle´æ´¢½á¹¹£º±í¿Õ¼äÓëÊý¾ÝÎļþ
OracleÊý¾Ý¿âÖоßÓÐÁ½ÖÖÀàÐ͵Ĵ洢£ºÎïÀí´æ´¢ºÍÂß¼´æ´¢¡£
ÉÏÃæµÄOracle´æ´¢½á¹¹Ä£ÐÍÖУ¬¿ÉÒÔ¿´³öÏÂÁÐÒªËØ£º
ÿ¸öÊý¾Ý¿â£¨Database£©¶¼±ØÐëÓÉÒ»¸ö»ò¶à¸ö±í¿Õ¼ä£¨Tablespace£©×é³É¡£Ã¿¸ö±í¿Õ¼ä¶¼±ØÐëÊôÓÚ²¢ÇÒÖ»ÊôÓÚÒ»¸öÊý¾Ý¿â¡£
ÿ¸ö±í¿Õ¼ä¶¼±ØÐëÓÉÒ»¸ö»ò¶à¸öÊý¾ÝÎļþ£¨Dat ......