Oracle 10g ÒªµãÕûÀí Ö® ¹ý³Ì¡¢º¯Êý¡¢³ÌÐò°ü¡¢´¥·¢Æ÷
¹ý³Ì¡¢º¯Êý¡¢³ÌÐò°ü¡¢´¥·¢Æ÷
1 ¹ý³Ì
£¨1£©¶¨ÒåÓï·¨
create [or replace ] procedure ¹ý³ÌÃû
[(²ÎÊý1 [in | out | in out] ²ÎÊýÀàÐÍ£¬
²ÎÊý2 [in | out | in out] ²ÎÊýÀàÐÍ£¬
……)]
is | as
begin
Ö´Ðв¿·Ö
exception
Òì³£´¦Àí²¿·Ö
end [¹ý³ÌÃû];
¹ý³ÌÖÐûÓÐdeclare²¿·Ö£¬ÉùÃ÷²¿·ÖÔÚbegin֮ǰ¡£
£¨2£©µ÷ÓÃÓï·¨
Óû§¼È¿ÉÒÔ´ÓÄäÃûµÄPL/SQL³ÌÐò¿éÖе÷Óã¬Ò²¿ÉÒÔÔÚSQL*PlusÖÐʹÓÃexecº¯Êý +¹ý³ÌÃûÀ´µ÷Óá£
Ö´Ðйý³ÌÖл¹Éè¼Æµ½È¨ÏÞÎÊÌ⣬¹ý³ÌµÄȨÏÞÊÇexecute£¬Ê¹ÓÃÏÂÁÐÓï¾ä½øÐÐÊÚȨ£º
grant execute on ¹ý³ÌÃû to Óû§Ãû£»
ÔÚSQL*PLUSÖе÷ÓÃ
EXEC procedure_name(parameter_list)
EXECUTE show_emp(10)
ÔÚPL/SQL¿éÖе÷ÓÃ
BEGIN
procedure_name(parameter_list);
END£»
£¨3£©Ê¹ÓòÎÊý
¢Ù ²ÎÊýģʽ
in£ºÊäÈë²ÎÊý£¬Óɹý³Ì¶ÁÈ¡
out£ºÊä³ö²ÎÊý£¬Óɹý³ÌдÈ룬¸Ã²ÎÊýÊʺÏÓÃÓÚ¹ý³ÌÏòµ÷ÓÃÕß·µ»Ø¶à¸öÐÅÏ¢¡£
in out£º¹ý³ÌÓÃÀ´¶ÁÈ¡ºÍдÈëËüÃǵÄÖµ¡£
¢Ú ²ÎÊý´«µÝ
ÔÚOracleÖУ¬¿ÉÒÔʹÓÃÈýÖÖ·½Ê½´«µÝ²ÎÊý£¬¼´Ê¹ÓÃÃû³Æ±íʾ·¨£¬Ê¹ÓÃλÖñíʾ·¨£¬Ê¹ÓûìºÏ±íʾ·¨¡£
A ʹÓÃÃû³Æ±íʾ·¨£º
¹ý³ÌÃû£¨²ÎÊýÃû => Öµ£¬……£©
²ÎÊýµÄʹÓôÎÐòºÍÉùÃ÷´ÎÐò¿ÉÒÔ²»Ò»Ñù¡£
B ʹÓÃλÖñíʾ·¨£º
¹ý³ÌÃû£¨²ÎÊýÖµ1£¬²ÎÊýÖµ2£¬……£©
»ùÓÚ²ÎÊýÔÚ¹ý³ÌÖж¨ÒåµÄ´ÎÐò½øÐд«µÝ¡£
C ʹÓûìºÏ±íʾ·¨£º
¹ý³ÌÃû£¨²ÎÊýÃû => Öµ£¬²ÎÊýÖµ£¬……£©
¢Û out²ÎÊý
±ØÐëÔÚÖ´Ðйý³ÌÇ°£¬¸ù¾Ý¹ý³Ì½«·µ»ØµÄ²ÎÊý¸öÊý£¬Ïȶ¨ÒåÏàÓ¦µÄ±äÁ¿¼°ÕýÈ·µÄ±äÁ¿ÀàÐÍÀ´½ÓÊÕ·µ»ØÖµ¡£
±ÈÈç˵¶¨ÒåÁËÁ½¸ö±äÁ¿AºÍB£¬ÄÇôA¡¢BÓÃÀ´½ÓÊÕ·µ»ØÖµµÄÓ÷¨ÊÇ£º
exec ¹ý³ÌÃû£¨:A, :B£©;
ΪÁ˲鿴AºÍBµÄÖµ£¬¿ÉÒÔʹÓÃprintÃüÁî
print A£»
print B£»
£¨4£©¹ý³ÌµÄ¹ÜÀí
¢Ù Ð޸Ĵ洢¹ý³Ì
CREATE OR REPLACE PROCEDURE
¢Ú ÖØбàÒë´æ´¢¹ý³Ì
ALTER PROCEDURE procedure_name COMPILE£»
¢Û ɾ³ý´æ´¢¹ý³Ì
DROP PROCEDURE procedure_nameÃû£»
¢Ü ²é¿´¹ý³ÌÔ´´úÂë
select text from user_source where name=procedure_name ;
2 º¯Êý
£¨1£©¸ÅÊö
º¯ÊýºÍ¹ý³ÌºÜÀàËÆ£¬ÊÇÊý¾Ý¿âÖд洢µÄÃüÃûPL/SQL³ÌÐò¿é¡£
´´½¨º¯ÊýÓë´´½¨¹ý³ÌµÄ¹æÔòÒ»Ñù¡£
º¯ÊýÓë¹ý³ÌµÄ°²È«·½Ê
Ïà¹ØÎĵµ£º
oracle±í¿Õ¼ä²Ù×÷Ïê½â
1
2
3×÷Õߣº À´Ô´£º ¸üÐÂÈÕÆÚ£º2006-01-04
5
6
7½¨Á¢±í¿Õ¼ä
8
9CREATE TABLESPACE data01
10DATAFILE '/ora ......
ϵÁÐÖ®Î壺ORACLE EBS ϵͳÖ÷Êý¾Ý¹ÜÀí£¨A£©
ÎïÁÏÊÇÔÚINVÄ£¿éÖж¨ÒåµÄ£¬¹©Ó¦ÉÌÊÇÔÚAPÄ£¿éÖж¨ÒåµÄ£¬¿Í»§ÊÇÔÚARÄ£¿éÖж¨ÒåµÄ
Èý¸ö³£ÓÃÖ÷Êý¾Ý£ºÎïÁÏ¡¢¹©Ó¦ÉÌÓë¿Í»§¡£ÕâÈý¸öÖ÷Êý¾Ý¶¼ÓÐÒ»¸ö¹²Í¬µÄϵͳʹÓÃÌص㣺¿ç×éÖ¯µÄÈ«¾ÖÐÔ¡£
¶ø¶ÔÓÚBOMÊý¾Ý£¬¾¡¹ÜÔÚÆóҵʵ¼Ê¹ÜÀí¹¤×÷ÖУ¬¿ÉÄܾßÓÐÒ»¶¨µÄÈ«¾ÖÐÔÌص㣨ÀýÈ粻ͬ¹¤³§Éú²úͬÑù² ......
¹ÜÀíÎļþ
1 ¹ÜÀí¿ØÖÆÎļþ
£¨1£©¸ÅÊö
¢Ù ¿ØÖÆÎļþÊÇOracleÊý¾Ý¿â×îÖØÒªµÄÎïÀíÎļþ¡£
¢Ú ÿ¸öOracleÊý¾Ý¿â¶¼±ØÐëÓÐÒ»¸ö¿ØÖÆÎļþ¡£
¢Û ÔÚ×°ÔØ£¨mount£©Êý¾Ý¿âʱ£¬Oracle»á¸ù¾Ý³õʼ»¯²ÎÊý¶¨Î»¿ØÖÆÎļþ¡£
¢Ü ÔÚÆô¶¯Àý³Ìʱ£¬Oracle»á¸ù¾Ý¿ØÖÆÎļþÔÚÀý³ÌºÍÊý¾Ý¿âÖ®¼ä½¨Á¢¹ØÁª¡£
¢Ý ´ò¿ªÊý¾Ý¿âʱ£¬Oracle»á¸ù¾Ý¿ØÖÆÎļþËù¼ÇÔ ......
ÎÊÌ⣺
1. oracleÖÐnumber£¬char/varchar£¬dateµÈÊý¾ÝÀàÐÍÊÇÔõô´æ´¢µÄ£¿×Ö½ÚÁ÷ÊÇʲôÑùµÄ£¿
2. ¸÷ÖÖÊý¾ÝÀàÐÍÕ¼ÓõÄ×Ö½Ú³¤¶ÈÊǶà´ó£¿
SELECT dump(1), DUMP(123456), DUMP(-123456), DUMP(1234567890123456) -- ÕûÊý
--SELECT DUMP(123456.789), DUMP(-123456.789), dump(1.234567890123456789E15), dump(1234567890123 ......
ÔÚÍøÉÏËÑË÷ÁË°ëÌ죬Ö÷ÒªÔÒòÊÇoci.dllÊÇ64λµÄ,¶øPL/SQL developerÖ»ÓÐ32λµÄ,ÔÚʹÓÃ64λoci.dllÎļþʱ³ö´í.
ÔÚÍøÉÏÕÒÁ˺ܶà×ÊÁÏ,×î·½±ãµÄ½â¾ö·½°¸ÈçÏÂ:
1.µ½oracle¹ÙÍøÏÂÔØOracle InstantClient,ÎÒϵÄÊÇinstantclient-basiclite-win32-10.2.0.4.zip,°ÑËü½âѹËõµ½
oracle°²×°Ä¿Â¼productÏÂ,ÆäÖл¹ÓÐÒ»¸öĿ¼Ϊ10.2.0. ......