oracle ´æ´¢¹ý³Ì
1.´´½¨¹ý³Ì
¡¡¡¡¡¡ÓëÆäËüµÄÊý¾Ý¿âϵͳһÑù£¬OracleµÄ´æ´¢¹ý³ÌÊÇÓÃPL/SQLÓïÑÔ±àдµÄÄÜÍê³ÉÒ»¶¨´¦Àí¹¦ÄܵĴ洢ÔÚÊý¾Ý¿â×ÖµäÖеijÌÐò¡£
¡¡¡¡Óï·¨:
¡¡¡¡create [or replace] procedure procedure_name
¡¡¡¡[ (argment [ { in| in out }] type,
¡¡¡¡argment [ { in | out | in out } ] type
¡¡¡¡{ is | as }
¡¡¡¡<ÀàÐÍ.±äÁ¿µÄ˵Ã÷>
¡¡¡¡ ( ×¢: ²»Óà declare Óï¾ä )
¡¡¡¡Begin
¡¡¡¡<Ö´Ðв¿·Ö>
¡¡¡¡exception
¡¡¡¡<¿ÉÑ¡µÄÒì³£´¦Àí˵Ã÷>
¡¡¡¡end;
¡¡¡¡l ÕâÀïµÄIN±íʾÏò´æ´¢¹ý³Ì´«µÝ²ÎÊý£¬OUT±íʾ´Ó´æ´¢¹ý³Ì·µ»Ø²ÎÊý¡£¶øIN OUT ±íʾ´«µÝ²ÎÊýºÍ·µ»Ø²ÎÊý£»
¡¡¡¡l ÔÚ´æ´¢¹ý³ÌÄڵıäÁ¿ÀàÐÍÖ»ÄÜÖ¸¶¨±äÁ¿ÀàÐÍ£»²»ÄÜÖ¸¶¨³¤¶È£»
¡¡¡¡l ÔÚAS»òIS ºóÉùÃ÷ÒªÓõ½µÄ±äÁ¿Ãû³ÆºÍ±äÁ¿ÀàÐͼ°³¤¶È£»
¡¡¡¡l ÔÚAS»òIS ºóÉùÃ÷±äÁ¿²»Òª¼Ódeclare Óï¾ä¡£
2.ʹÓùý³Ì
¡¡¡¡¡¡´æ´¢¹ý³Ì½¨Á¢Íê³Éºó£¬Ö»ÒªÍ¨¹ýÊÚȨ£¬Óû§¾Í¿ÉÒÔÔÚSQLPLUS ¡¢Oracle¿ª·¢¹¤¾ß»òµÚÈý·½¿ª·¢¹¤¾ßÀ´µ÷ÓÃÔËÐС£Oracle ʹÓÃEXECUTE Óï¾äÀ´ÊµÏÖ¶Ô´æ´¢¹ý³ÌµÄµ÷Óá£
¡¡¡¡Óï·¨£º
¡¡¡¡EXEC[UTE] procedure_name( parameter1, parameter2…);
3.¿ª·¢¹ý³Ì
¡¡¡¡¡¡Ä¿Ç°µÄ¼¸´óÊý¾Ý¿â³§ÉÌÌṩµÄ±àд´æ´¢¹ý³ÌµÄ¹¤¾ß¶¼Ã»ÓÐͳһ£¬ËäÈ»ËüÃǵıàд·ç¸ñÓÐЩÏàËÆ£¬µ«ÓÉÓÚûÓбê×¼£¬ËùÒÔ¸÷¼ÒµÄ¿ª·¢µ÷ÊÔ¹ý³ÌÒ²²»Ò»Ñù¡£ÏÂÃæ±àдPL/SQL´æ´¢¹ý³Ì¡¢º¯Êý¡¢°ü¼°´¥·¢Æ÷µÄ²½ÖèÈçÏ£º
¡¡¡¡3.1 ±à¼´æ´¢¹ý³ÌÔ´ÂëʹÓÃÎÄ×ֱ༴¦ÀíÈí¼þ±à¼´æ´¢¹ý³ÌÔ´Â룬ҪÓÃÀàËÆWORD ÎÄ×Ö´¦ÀíÈí¼þ½øÐбà¼Ê±£¬Òª½«Ô´Âë´æÎªÎı¾¸ñʽ¡£
¡¡¡¡3.2 ¶Ô´æ´¢¹ý³Ì³ÌÐò½øÐнâÊÍÔÚSQLPLUS»òÓõ÷ÊÔ¹¤¾ß½« ´æ´¢¹ý³Ì³ÌÐò½øÐнâÊÍ£»
¡¡¡¡ÔÚSQL>ϵ÷ÊÔ£¬¿ÉÓÃstart »òget µÈOracleÃüÁîÀ´Æô¶¯½âÊÍ¡£È磺
¡¡¡¡SQL>start c:\stat1.sql
¡¡¡¡Èç¹ûʹÓõ÷ÊÔ¹¤¾ß£¬¿ÉÖ±½Ó±à¼ºÍµã»÷ÏàÓ¦µÄ°´Å¥¼´¿ÉÉú³É´æ´¢¹ý³Ì¡£[1]
¡¡¡¡3.3 µ÷ÊÔÔ´ÂëÖ±µ½ÕýÈ·ÎÒÃDz»Äܱ£Ö¤ËùдµÄ´æ´¢¹ý³Ì´ïµ½Ò»´Î¾ÍÕýÈ·¡£ËùÒÔÕâÀïµÄµ÷ÊÔÊÇÿ¸ö³ÌÐòÔ±±ØÐë½øÐеŤ×÷Ö®Ò»¡£ÔÚSQLPLUSÏÂÀ´µ÷ÊÔÖ÷ÒªÓõķ½·¨ÊÇ£º
¡¡¡¡1£®Ê¹Óà SHOW ERRORÃüÁîÀ´ÌáʾԴÂëµÄ´íÎóλÖã»
¡¡¡¡2£®Ê¹Óà USER_ERRORS Êý¾Ý×ÖµäÀ´²é¿´¸÷´æ´¢¹ý³ÌµÄ´íÎóλÖá£
¡¡¡¡3.4 ÊÚȨִÐÐȨ¸øÏà¹ØµÄÓû§»ò½ÇÉ«Èç¹ûµ÷ÊÔÕýÈ·µÄ´æ´¢¹ý³ÌûÓнøÐÐÊÚȨ£¬ÄǾÍÖ»Óн¨Á¢Õß±¾È˲ſÉÒÔÔËÐС£ËùÒÔ×÷ΪӦÓÃϵͳµÄÒ»²¿·ÖµÄ´æ´¢¹ý³ÌÒ²±ØÐë½øÐÐÊÚȨ²ÅÄÜ´ïµ½ÒªÇó¡£ ÔÚSQLPLUSÏ¿ÉÒÔÓÃGRANTÃüÁîÀ´½øÐд洢¹ý³ÌµÄÔËÐÐÊÚȨ¡£
¡
Ïà¹ØÎĵµ£º
ʲôÊǺϲ¢¶àÐÐ×Ö·û´®£¨Á¬½Ó×Ö·û´®£©ÄØ£¬ÀýÈ磺
SQL> desc test;
Name Type Nullable Default Comments
------- ------------ -------- ------- --------
COUNTRY VARCHAR2(20) Y
CITY VARCHAR2(20) Y
SQL> select * from test;
COUNTRY CITY
-------------------- --------------------
Öйú ̨±±
Öйú Ïã ......
ÉÌÒµºÍÊý¾Ý¿âºÜ¶àʱºò±ØÐë¿çÊ±Çø¹¤×÷£¬´Ó9i¿ªÊ¼£¬oracle»·¾³¿ªÊ¼ÓÐÁËÊ±ÇøÒâʶ£¬Í¨¹ýÖ¸¶¨Êý¾Ý¿âµÄÊ±ÇøºÍʹÓÃTIMESTAMP WITH TIME ZONEºÍTIMESTAMP WITH LOCAL TIME ZONEÊý¾ÝÀàÐÍÀ´ÊµÏָù¦ÄÜ¡£
TIMESTAMP WITH TIME ZONE²»»á´æ´¢Êý¾Ý¿âÊ±Çø£¬µ«ÊÇÓÐÒ»¸öָʾÓÃÀ´ËµÃ÷¸Ãʱ¼äËùʹÓõÄÊ±Çø¡£TIMESTAMP WITH LOCAL TIME ZONE»áͬ ......
µÚÒ»ÖÖ£º
select b.* from
( select a.*, rownum row_num from
(select t.* from A05_ORGANIZATION t order by org_name_en asc) a
) b
where b.row_num between 1 and 5 order by b.row_num asc
µÚ¶þÖÖ£¨¸ü¸ßЧ£©£º
select b.* from
( select a.*, rown ......
oracleµÄodbcÍø¹Ø£¨gateway£©¼¸ºõÌṩһ¸öÎÞÏßµÄÊý¾ÝÕûºÏƽ̨£¬ÔÚoracleºÍÆäËüRDBMSÖ®¼ä£¬ÎÒÔÚÕâ²»Ïë˵ËüµÄ£¬²Ù×÷£¬ÏÞÖÆÒÔ¼°Ïà¹ØÐÔ£¬Ëü½â¾öÁËÒ»¸öСÎÊÌ⣬°ÑËü½¨Á¢ÆðÀ´ÄãÄÜ£¬ÀýÈ磬´´½¨Ò»¸ö database link ÔÚoracle ºÍoracleÖ®¼ä£¬±Ï¾¹£¬ÕâÑù²»ÊǺܺÃô£¬ÀýÈçÄãÄÜÔËÐÐÏÂÃæµÄsqlÓï¾ä£¬
select o.col1, m.col1 from or ......
¡¡ÈçÏ£¬±íaÊÇÊý¾Ý¿âÖÐÒѾ´æÔÚµÄ±í£¬bÊÇ×¼±¸¸ù¾Ý±ía½øÐи´ÖÆ´´½¨µÄ±í£º
¡¡¡¡1¡¢Ö»¸´ÖƱí½á¹¹µÄsql
¡¡¡¡create table b as select * from a where 1<>1
¡¡¡¡2¡¢¼´¸´ÖƱí½á¹¹ÓÖ¸´ÖƱíÖÐÊý¾ÝµÄsql
¡¡¡¡create table b as select * from a
¡¡¡¡3¡¢¸´ÖƱíµÄÖÆ¶¨×ֶεÄsql
¡¡¡¡create table b as select row_id ......