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

ORACLE ´¿¶È¼¶±ð£¨PURITY£©

PRAGMA RESTRICT_REFERENCES()£¬Õâ¸öPRAGMA±È½Ï¸´ÔÓ£¬ ×ܵÄÀ´Ëµ£¬ËüÊÇÒ»¸ö³ÌÐò¸¨Öú¼ìÑéÂ룬¼ì²é×Ó³ÌÐòµÄ´¿¶È£¨PURITY£©£¬°ïÖú¼ìÑé×Ó³ÌÐòÊÇ·ñÓÐÎ¥·´¹æÔòµÄµØ·½¡£Ò»°ãÓÃÔÚº¯ÊýÉÏ£¬µ«µ±º¯Êýµ÷Óùý³Ìʱ£¬Ò²Òª×÷ÏàÓ¦µÄÉèÖüì²é¡£ÕâÊÇΪÁ˱ÜÃâµ±ÔÚDMLÓï¾äÉϵ÷Óú¯ÊýʱÕý³£Ö´Ðв»ÖÁÓÚ²úÉú´íÎó¡£
    Óï·¨£¬PRAGMA RESTRICT_REFERENCES(function_name | default , )RNDS, WNDS, RNPS, WNPS) | , TRUST);
     RNDS£¬WNDS£¬RNPS£¬WNPS¿ÉÒÔͬʱָ¶¨¡£µ«µ±TRUSTÖ¸¶¨ÊÇ£¬ÆäËüµÄ±»ºöÂÔ¡£
     DEFAUTÊÇÖ¸×÷ÓÃÔڸóÌÐò°üÉϵÄËùÓÐ×Ó³ÌÐò£¬º¯Êý¡£
     RNDS£¨Read No Database State£©£¬¹æ¶¨×Ó³ÌÐò²»ÄܶÁÈ¡ÈκεÄÊý¾Ý¿â״̬ÐÅÏ¢¡£(¼´²»»á²éѯÊý¾Ý¿âµÄÈÎºÎ±í£¬°üÀ¨DUALÐé±í£©
     RNPS£¨Read No Package State£©£¬¹æ¶¨×Ó³ÌÐò²»ÄܶÁÈ¡ÈκγÌÐò°üµÄ״̬ÐÅÏ¢£¬Èç±äÁ¿µÈ¡£
     WNDS£¨Write No Database State£©£¬¹æ¶¨×Ó³ÌÐò²»ÄÜÏòÊý¾Ý¿âдÈëÈκÎÐÅÏ¢¡££¨¼´²»ÄÜÐÞ¸ÄÊý¾Ý¿â±í£©
     WNPS£¨Write No Package State£©£¬¹æ¶¨×Ó³ÌÐò²»ÄÜÏò³ÌÐò°üдÈëÈκÎÐÅÏ¢¡££¨¼´²»ÄÜÐ޸ijÌÐò°ü±äÁ¿µÄÖµ£©
     TRUST£¬Ö¸³ö×Ó³ÌÐòÊÇ¿ÉÒÔÏàÐŵIJ»»áÎ¥·´Ò»¸ö»ò¶à¸ö¹æÔò¡£Õâ¸öÑ¡ÏîÊÇÐèÒªµÄµ±ÓÃC»òJAVAдµÄº¯Êýͨ¹ýPL/SQLµ÷ÓÃʱ£¬ÒòΪPL/SQLÔÚÔËÐÐÊǶÔËüÃDz»Äܼì²é¡£
ʾÀý:
create or replace package purity is
minsal number(6,2);
maxsal number(6,2);
function max_sal return number;
function min_sal return number;
--ÏÞÖÆº¯Êý²»Äܸıä°ü±äÁ¿:WNPS,ÆäËüµÄ»¹ÓÐ
pragma restrict_references(max_sal,wnps);
pragma restrict_references(min_sal,wnps);
end;
create or replace package body purity is
function max_sal return number
as
begin 
--select max(sal) into maxsal from emp;
--¼ÓÉÏÃæÕâÐж԰ü±äÁ¿½øÐиıä,ÔòÌáʾ"Î¥·´Ïà¹Ø±àÒëָʾ"
return maxsal;
end;
function min_sal return number
as
begin 
--select min(sal) into minsal from emp;
--¼ÓÉÏÃæÕâÐж԰ü±äÁ¿½øÐиıä,ÔòÌáʾ"Î¥·´Ïà¹Ø±àÒëָʾ"
return minsal;
end;
--¹¹Ô캯Êý
--д¹¹Ô캯Êý¹¹Ôì±äÁ¿Ê±,BEGIN¿ªÊ¼,¹²ÓðüÌå½áÊøµÄEND;±êÖ¾
begin
select min(sal),max(sal) into minsal,maxsal from em


Ïà¹ØÎĵµ£º

ORACLE¹ÜÀíÔ±ÃÜÂ붪ʧ½â¾ö·½°¸

1¡¢OracleÀïÃæÓû§µÄÃÜÂëÊǽøÐмÓÃܱ£´æµÄ,ËùÒÔÖ»ÄÜÖØÐÂÐÞ¸ÄÉú³ÉеÄÃÜÂë.


ÀûÓÃϵͳ¹ÜÀíÔ±(sys)µÇ¼,½«scottÓû§µÄÃÜÂëÐ޸ļ´¿É

SQL>conn / as sysdba ;


ÒÑÁ¬½Ó¡£

SQL>alter user scott identified by tiger
;


Óû§ÒѸü¸Ä¡£

µ±È»Ò²¿ÉÒÔµ½WEB¶Ë½øÐÐÐ޸ĵØÖ·È ......

oracle µÄ left/right joinÓë(+)µÄÒ»¸öÇø±ð

»ù±¾´ÓÀ´²»ÓÃleft/right join
Ò»¸öÏîÄ¿±»ÆÈÒªÓñðÈËдµÄ sql
±¾´òËã¸ÄдһÏ£¬Ìá¸ßЧÂÊ
·¢ÏÖ£º
¡¾1¡¿
select * from  a
left outer join  b on a.id= b.id AND ...1...
 where ...2...
Óë
¡¾2¡¿
select * from  a , b 
 where a.id= b.id(+)
A ......

oracle ¶ªÊ§ÃÜÂë

1¡¢OracleÀïÃæÓû§µÄÃÜÂëÊǽøÐмÓÃܱ£´æµÄ,ËùÒÔÖ»ÄÜÖØÐÂÐÞ¸ÄÉú³ÉеÄÃÜÂë.
ÀûÓÃϵͳ¹ÜÀíÔ±(sys)µÇ¼,½«scottÓû§µÄÃÜÂëÐ޸ļ´¿É
SQL>conn / as sysdba ;
ÒÑÁ¬½Ó¡£
SQL>alter user scott identified by tiger ;
Óû§ÒѸü¸Ä¡£
µ±È»Ò²¿ÉÒÔµ½WEB¶Ë½øÐÐÐ޸ĵØÖ·ÈçÏÂ:
http://localhsot:1158/em(ÏàÓ¦µÄ·þÎñ±Ø ......

Oracleѧϰ±Ê¼ÇÖ®ÈÕÆÚº¯Êý

OracleÈÕÆÚº¯Êýѧϰʱ£¬Ôڽ̳ÌÓм¸¸öʵÀýÈçÏ£º
Months_between(’01-sep-95’, ’11-jan-94’)
½á¹ûÊÇ£º19.6774194

Add_months ÔÚÖ¸¶¨µÄÔ·ÝÉÏÃæÔö¼ÓÏàÓ¦µÃÔ·Ý
ÀýÈ磺
Add_months(’11-jan-94’, 6)
½á¹ûÊÇ£º11-jul-94

Next_day ¼ÆËã¹æ¶¨Èͮ򵀼óÒ»¸öÌØ¶¨ÈÕÆÚ
ÀýÈ磺
Next_ ......

OracleÖаÑyyyy mm ddת³ÉyyyyÄêmmÔÂddÈÕ


SQL> select   to_char(sysdate,'yyyy')||'Äê'||to_char(sysdate,'mm')||'ÔÂ'||to_char(sysdate,'dd')||'ÈÕ'  from   dual;
TO_CHAR(SYSDATE,'YYYY')||'Äê'|
»òÕßʹÓÃË«ÒýºÅ
select to_char(add_months(trunc(sysdate),-1),'yyyy"Äê"mm"ÔÂ"') from dual    È¡ÉϸöÔ·Ý
......
© 2009 ej38.com All Rights Reserved. ¹ØÓÚE½¡ÍøÁªÏµÎÒÃÇ | Õ¾µãµØÍ¼ | ¸ÓICP±¸09004571ºÅ