oracle, stored procedure, cursor
CREATE OR REPLACE PROCEDURE kevin_proc(x varchar) IS
a VARCHAR(20);
b VARCHAR(20);
CURSOR mycur(rn NUMBER) IS SELECT * from t_kevin_test WHERE ROWNUM<rn;
BEGIN
OPEN mycur(10);
LOOP FETCH mycur INTO a,b;
EXIT WHEN mycur%NOTFOUND;
Dbms_Output.put_line('a: '||a);
Dbms_Output.put_line('b: '||b);
END LOOP;
CLOSE mycur;
begin
dbms_output.put_line (x);
end;
END;
Ïà¹ØÎĵµ£º
˵µ½HWM,ÎÒÃÇÊ×ÏÈÒª¼òÒªµÄ̸̸ORACLEµÄÂß¼´æ´¢¹ÜÀí.ÎÒÃÇÖªµÀ,ORACLEÔÚÂß¼´æ´¢ÉÏ·Ö4¸öÁ£¶È:±í¿Õ¼ä,¶Î,ÇøºÍ¿é.
(1)¿é:ÊÇÁ£¶È×îСµÄ´æ´¢µ¥Î»,ÏÖÔÚ±ê×¼µÄ¿é´óСÊÇ8K,ORACLEÿһ´ÎI/O²Ù×÷Ò²Êǰ´¿éÀ´²Ù×÷µÄ,Ò²¾ÍÊÇ˵µ±ORACLE´ÓÊý¾ÝÎļþ¶ÁÊý¾Ýʱ,ÊǶÁÈ¡¶àÉÙ¸ö¿é,¶ø²»ÊǶàÉÙÐÐ.
(2)Çø:ÓÉһϵÁÐÏàÁÚµÄ¿é¶ø×é³É,ÕâÒ²ÊÇORACLE¿Õ¼ ......
ÒÔÏÂÊÇÕª×ÔOracle¹ÙÍø:
¢ñ Oracle SQL Developer ÊÇÒ»¸öÃâ·ÑµÄͼÐλ¯Êý¾Ý¿â¿ª·¢¹¤¾ß¡£Ê¹Óà SQL Developer£¬Äú¿ÉÒÔä¯ÀÀÊý¾Ý¿â¶ÔÏó¡¢ÔËÐÐ SQL Óï¾äºÍ SQL ½Å±¾£¬²¢ÇÒ»¹¿ÉÒԱ༺͵÷ÊÔ PL/SQL Óï¾ä¡£Äú»¹¿ÉÒÔÔËÐÐËùÌṩµÄÈκÎÊýÁ¿µÄ±¨±í£¬ÒÔ¼°´´½¨ºÍ±£´æÄú×Ô¼ºµÄ±¨±í¡£SQL Developer ¿ÉÒÔÌá¸ß¹¤×÷ЧÂʲ¢¼ò»¯Êý¾Ý¿â¿ª·¢ÈÎÎñ¡£ ......
×î½ü×ö¶ÌÐÅȺ·¢ÏîÄ¿ÓÐÒ»¸öÐèÇó,ÐèÒª¿Í»§´óÅúÁ¿(Ê®Íò¼¶)µ¼ÈëÊý¾Ý.
¿ªÊ¼ÊÇÓÃinsertµ¥ÌõÊý¾Ý,10ÍòÌõÊý¾ÝÒª20·ÖÖÓ
ºóÀ´·¢ÏÖ¿ÉÒÔÓÃinsert all Ò»ÌõsqlÒ»´Îµ¼Èë500Ìõ¼Ç¼,ÕâÑù10ÍòÌõÊý¾ÝÖ»ÓÃÁË1.5·ÖÖÓ,µ¼ÈëËÙ¶ÈÌá¸ßÁ˽üÀ´20±¶
ÏÂÃæ¾ÍʹÓÃinsert allµÄÐĵÃÌå»á¼Ç¼ÈçÏÂ.
ʹÓ÷½·¨:
insert all into table_name(col_1,col_2) v ......
oracleÆô¶¯ÎÊÌâ
Ò»£ºÊý¾Ý¿âûÓÐÆô¶¯
#sqlplus /nolog
sql>connect /as sysdba
sql>startup
¶þ£º¼àÌý³öÎÊÌâ
µÇ¼DB·þÎñÆ÷
ʹÓÃlsnrctl start/stop¿ªÆô/¹Ø±Õ¼àÌý
ʹÓÃlsnrctl status²é¿´×´Ì¬
ÀíӦΪ£º
Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=ERPAP)(PORT=1521)))
STATUS of the ......
¾¹ý³¤Ê±¼äѧϰOracle£¬Äã¿ÉÄÜ»áÓöµ½Oracle tnsÅäÖÃÎÊÌ⣬ÕâÀォ½éÉÜOracle tnsÅäÖÃÎÊÌâµÄ½â¾ö·½·¨¡£×î½üæ×Ű²×°OracleÊý¾Ý¿â£¬±¾À´Í¦¼òµ¥µÄ£¬¿ÉÀÏÊdzöÏÖÎÊÌ⣬×îºó×Ô¼ºÔÚÍøÉÏÕûÀíÁËһЩtns´íÎó½â¾ö·½·¨£¬Ï£Íû¶Ô³õѧÕßÓÐÒæ¡£
³£¼ûÎÊÌâ:
1¡¢ORA-12541:tns:ûÓмàÌýÆ÷£º
ÏÔ¶øÒ×¼û£¬·þÎñÆ÷¶ËµÄ¼àÌýÆ÷ûÓÐÆô¶¯£¬ÁíÍâ¼ì²é¿Í» ......