Ò׽ؽØÍ¼Èí¼þ¡¢µ¥Îļþ¡¢Ãâ°²×°¡¢´¿ÂÌÉ«¡¢½ö160KB

oracleµÄ´æ´¢¹ý³ÌºÍÓαê


OracleÖеĴ洢¹ý³ÌºÍÓαê:
select myFunc(²ÎÊý1,²ÎÊý2..) to dual; --¿ÉÒÔÖ´ÐÐһЩҵÎñÂß¼­
Ò»:OracleÖеĺ¯ÊýÓë´æ´¢¹ý³ÌµÄÇø±ð:
A:º¯Êý±ØÐëÓзµ»ØÖµ,¶ø¹ý³ÌûÓÐ.
B:º¯Êý¿ÉÒÔµ¥¶ÀÖ´ÐÐ.¶ø¹ý³Ì±ØÐëͨ¹ýexecuteÖ´ÐÐ.
C:º¯Êý¿ÉÒÔǶÈëµ½SQLÓï¾äÖÐÖ´ÐÐ.¶ø¹ý³Ì²»ÐÐ.
ÆäʵÎÒÃÇ¿ÉÒÔ½«±È½Ï¸´ÔӵIJéѯд³Éº¯Êý.È»ºóµ½´æ´¢¹ý³ÌÖÐÈ¥µ÷ÓÃÕâЩº¯Êý.
¶þ:ÈçºÎ´´½¨´æ´¢¹ý³Ì:
A:¸ñʽ
create or replace procedure <porcedure_name>
[(²ÎÊýÃû²ÎÊýÀàÐÍÒÔ¼°ÃèÊö,....)] ---×¢Òâ,ûÓзµ»ØÖµ
is
[±äÁ¿ÉùÃ÷]
begin
[¹ý³Ì´¦Àí];----------null;
exception
when Òì³£Ãû then
end;
×¢Òâ:²ÎÊýÖÐĬÈÏÊǰ´Öµ´«µÝ.ÊÇin·½Ê½.Ò²¿ÉÒÔÊÇoutºÍin out·½Ê½.ÕâÐ©ÌØµãºÍº¯ÊýÒ»Ñù.
B:¾ÙÀý1:
create or replace procedure myPro----create or replace proc myPro ³ö´í ²»Äܼòд
(a in int:=0,b in int:=0)
is
c int:=0;
begin
c:=a+b;
dbms_output.put_line('C is value'||c);
end;
Ö´ÐÐ:
execute myPro(10,20); ---ÔÚSql ServerÖÐ.Ö´Ðд洢¹ý³ÌÊDz»ÐèÒªÀ¨»¡µÄ.×¢Ò⠷ֺŲ»Òªµ÷ÁË.
exec myPro(10,20); --¿ÉÒÔ¼òд
C:¾ÙÀý2:
Èç¹ûÔÚÒ»¸öº¯ÊýÀïÃæ°üº¬SelectÓï¾äµÄ»°,ÄÇô¸ÃSelectÓï¾ä±ØÐëÓÐinto,¹ý³ÌͬÑùÒ²ÐèÒª.
create or replace procedure myPro1
(a int:=0,b int:=0)
is
c int:=0;
begin
select empno+a+b into c from emp where ename='FORD';
dbms_output.put_line('C is values '||c);
end;
Ö´ÐÐ:
execute myPro1(10,20)
D:¼ÙÈçÔÚÒ»¸ö¹ý³ÌÀïÃæÒª·µ»ØÒ»¸ö½á¹û¼¯£¬Ôõô°ì?´ó¼Ò×¢Òâ.¾Í±ØÐëÒªÓõ½ÓαêÁË!ÓÃÓαêÀ´´¦ÀíÕâ¸ö½á¹û¼¯.
create or replace procedure Test
(
varEmpName emp.ename%type
)
is begin ------»á±¨´í.´íÎóÔ­ÒòûÓÐinto×Ó¾ä.
select * from emp where ename like '%'||varEmpName||'%';
end;
Õâ¸ö³ÌÐòÎÒÃÇÎÞ·¨ÓÃinto£¬ÒòΪÔÚOracleÀïÃæÃ»ÓÐÒ»¸öÀàÐÍÈ¥½ÓÊÜÒ»¸ö½á¹û¼¯.Õâ¸öʱºòÎÒÃÇ¿ÉÒÔÉùÃ÷Óαê¶ÔÏóÈ¥½ÓÊÜËû.
PL/SQLÓαê:
A:·ÖÀà:
1:ÒþʽÓαê:·ÇÓû§Ã÷È·ÉùÃ÷¶ø²úÉúµÄÓαê. Äã¸ù±¾¿´²»µ½cursorÕâ¸ö¹Ø¼ü×Ö.
2:ÏÔʾÓαê:Óû§Ã÷ȷͨ¹ýcursor¹Ø¼ü×ÖÀ´ÉùÃ÷µÄÓαê.
B:ʲôÊÇÒþʽÓαê:
1:ʲôʱºò²úÉú:
»áÔÚÖ´ÐÐÈκκϷ¨µÄSQLÓï¾ä(DML---INSERT UPDATE DELETE DQL-----SELECT)ÖвúÉú.Ëû²»Ò»¶¨´æ·ÅÊý¾Ý.Ò²ÓпÉÄÜ´æ·Å¼Ç¼¼¯ËùÓ°ÏìµÄÐÐÊý.
Èç¹ûÖ´ÐÐSELECTÓï¾ä,Õâ¸öʱºòÓαê»á´æ·ÅÊý¾Ý.Èç¹ûÖ´ÐÐINSERT UPDATE DELETE»á´æ


Ïà¹ØÎĵµ£º

oracleÓαêµÄʹÓÃ

CREATE OR REPLACE PROCEDURE PROC_T(
RESULT OUT NUMBER
)
IS
V_NAME emp%ROWTYPE;
CURSOR CUS_T IS SELECT * from EMP;
BEGIN
OPEN CUS_T;
loop
FETCH CUS_T INTO V_NAME;
exit when cus_t%notfound;
RESULT:=CUS_T%ROWCOUNT;
end loop;
CLOSE CUS_T;
END PROC_T; ......

OracleÊý¾Ý¿âµ¼Èë±ÃºÍµ¼³ö±ÃimpdpºÍexpdp£¨1£©

OracleÊý¾Ý¿âµ¼Èë±ÃºÍµ¼³ö±ÃimpdpºÍexpdp£¨1£©
 
Oracleµ¼Èëµ¼³ö¹Ù·½¶¨Òå
 
ÈçºÎ²é¿´ImpdpºÍExpdpÃüÁ
ǰÌ᣺°²×°OracleÊý¾Ý¿â£¨µ¼Èë±ÃºÍµ¼³ö±ÃÖ»ÄÜÔÚOracleÊý¾Ý¿â·þÎñÆ÷¶ËʹÓã©¡£
Ò»¡¢             IMPDPÃüÁî
1.     ......

OracleÖнØÈ¡×Ö·û´®

¹ØÓÚOracleÀïÃæµÄһЩСº¯Êý
ÒªÇó£ºA.Êý¾Ý¿â±íÖеÄÒ»¸ö×Ö·û´®  ¿ÉÄܺ¬ÓÐ"+" Àý£ºORC+001
       Ò²¿ÉÄܲ»º¬“+”
      B.ÒªÇóÈç¹û¸Ã×Ö·û´®º¬ÓГ+”£¬ÔòÈ¡“+”֮ǰµÄ×Ö·û Àý£ºORC+001 È¡ORC
     ......

OracleÊý¾Ý¿âµÄÆÕÍ¨Ç¨ÒÆ·½·¨

ÔÚÏàͬ²Ù×÷ϵͳ»·¾³Ï£¬Ïàͬ°æ±¾OracleÊý¾Ý¿âµÄÇ¨ÒÆ±È½Ï¼òµ¥¡£
 
´óÖ²½Ö裺
1¡¢È·¶¨Ô´»úµÄ²Ù×÷ϵͳÀàÐͺͰ汾£¬Ô´»úÖ÷»úÃû£»Oracle°æ±¾£¬°²×°Ä¿Â¼£¬SID¡£
±¾ÀýÖУ¬Ô´»úΪ£º  Win2k Adv£¬ ywxt£¬Oracle v8.17,  d:\oracle, orcl
Ä¿±ê»úΪ£ºWin2003£¬ywxt£¬Oracle v8.17,  d:\oracle, orcl
  ......

oracleÊý¾Ý¿âµÄ±¸·ÝÓë»Ö¸´

oracleÊý¾Ý¿âµÄ±¸·ÝÓë»Ö¸´
---- µ±ÎÒÃÇʹÓÃÒ»¸öÊý¾Ý¿âʱ£¬×ÜÏ£ÍûÊý¾Ý¿âµÄÄÚÈÝÊǿɿ¿µÄ¡¢ÕýÈ·µÄ£¬µ«ÓÉÓÚ¼ÆËã»úϵͳµÄ¹ÊÕÏ£¨°üÀ¨»úÆ÷¹ÊÕÏ¡¢½éÖʹÊÕÏ¡¢Îó²Ù×÷µÈ£©£¬Êý¾Ý¿âÓÐʱҲ¿ÉÄÜÔâµ½ÆÆ»µ£¬ÕâʱÈçºÎ¾¡¿ì»Ö¸´Êý¾Ý¾Í³ÉΪµ±ÎñÖ®¼±¡£Èç¹ûƽʱ¶ÔÊý¾Ý¿â×öÁ˱¸·Ý£¬ÄÇô´Ëʱ»Ö¸´Êý¾Ý¾ÍÏԵúÜÈÝÒס£Óɴ˿ɼû£¬×öºÃÊý¾Ý¿âµÄ±¸·ÝÊǶ ......
© 2009 ej38.com All Rights Reserved. ¹ØÓÚE½¡ÍøÁªÏµÎÒÃÇ | Õ¾µãµØÍ¼ | ¸ÓICP±¸09004571ºÅ