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

Oracle ѧϰ£ºPL/SQLÑ­Ðò½¥½øÈ«ÃæÑ§Ï°½Ì³Ì

 ¿Î³ÌÊ®¶þ ±àд¿ØÖƽṹÓï¾ä
¡¡¡¡
¡¡¡¡±¾¿ÎÖØµã£º
¡¡¡¡1¡¢½á¹¹¿ØÖƵĵÄÓÃ;ºÍÀàÐÍ
¡¡¡¡2¡¢IF ½á¹¹
¡¡¡¡3¡¢¹¹ÔìºÍ±êʶ²»Í¬µÄÑ­»·
¡¡¡¡4¡¢Ê¹ÓÃÂß¼­±í
¡¡¡¡5¡¢¿ØÖÆÁ÷ºÍǶÌ×
¡¡¡¡
¡¡¡¡×¢Ò⣺ÒÔÏÂʵÀýÖбêµã¾ùΪӢÎİë½Ç
¡¡¡¡
¡¡¡¡Ò»¡¢¿ØÖÆÖ´ÐÐÁ÷
¡¡¡¡¿ÉÒÔÊÇ·ÖÖ§ºÍÑ­»·£ºIF THEN END IF
¡¡¡¡IF condition THEN
¡¡¡¡statements;
¡¡¡¡[ELSIF condition THEN
¡¡¡¡statements;]
¡¡¡¡[ELSE
¡¡¡¡statements;]
¡¡¡¡END IF;
¡¡¡¡Àý×Ó£ºIF V_ENAME='OSBORNE' THEN
¡¡¡¡V_MGR:=22;
¡¡¡¡END IF;
¡¡¡¡ÕâÀïÎÒÃÇ¿ÉÒÔ×¢Ò⣬PLSQLºÍCÓïÑÔ»òJAVAÔÚÌõ¼þÉϵIJ»Í¬£¬=´ú±í¹ØÏµÔËË㣬¶ø£º=´ú±í¸³Öµ¡£
¡¡¡¡¿´Ò»¸öº¯Êý£º
¡¡¡¡create¡¡¡¡FUNCTION calc_val
¡¡¡¡(v_start IN NUMBER)
¡¡¡¡RETURN NUMBER
¡¡¡¡IS
¡¡¡¡BEGIN
¡¡¡¡IF v_start > 100 THEN
¡¡¡¡RETURN (2 * v_start);
¡¡¡¡ELSIF v_start >= 50 THEN
¡¡¡¡RETURN (.5 * v_start);
¡¡¡¡ELSE
¡¡¡¡RETURN (.1 * v_start);
¡¡¡¡END IF;
¡¡¡¡END calc_val;
¡¡¡¡ÏÖÔÚ£¬ËäÈ»ÎÒÃÇÉÐδ½²½âCREATE º¯Êý»ò¹ý³Ì£¬µ«¿ÉÒÔ¿´µ½IF Ìõ¼þÔÚÆäÖеÄ×÷Óá£
¡¡¡¡¶þ¡¢×¢ÒâLOGIC TABLEÖеÄÂß¼­¶ÔÓ¦¹ØÏµ
¡¡¡¡1¡¢NOT¡¢AND¡¢OR
¡¡¡¡2¡¢Èκαí´ïʽÖк¬ÓпÕÖµ½á¹û¶¼Îª NULL
¡¡¡¡3¡¢Á¬½Ó×Ö·û´®Öк¬ÓпÕÖµ»á°ÑNULL×÷Ϊ EMPTY STRING
¡¡¡¡declare
¡¡¡¡v_deptno dept.deptno%type;
¡¡¡¡v_loc dept.loc%type;
¡¡¡¡V_FLAG BOOLEAN ;
¡¡¡¡V_REC BOOLEAN :=FALSE; --´ËÖµ¸ÄΪTRUE¡¢NULL¡¢FALSE½øÐв»Í¬µÄ±È½Ï
¡¡¡¡V_AVA BOOLEAN:=NULL;
¡¡¡¡begin
¡¡¡¡V_FLAG:=V_REC AND V_AVA;
¡¡¡¡IF V_FLAG=TRUE THEN
¡¡¡¡DBMS_OUTPUT.PUT_LINE ('TRUE');
¡¡¡¡ELSIF V_FLAG=FALSE THEN
¡¡¡¡DBMS_OUTPUT.PUT_LINE ('FALSE');
¡¡¡¡ELSE
¡¡¡¡DBMS_OUTPUT.PUT_LINE ('NULL');
¡¡¡¡END IF;
¡¡¡¡end;
¡¡¡¡/
¡¡¡¡ÖµµÃ×¢ÒâµÄÊÇ£ºNULL AND FALSE ---> FALSE
¡¡¡¡ÕâÊÇÔÚʵ¼ùÖÐ×ܽá³öÀ´µÄ¡£
¡¡¡¡Èý¡¢»ù±¾Ñ­»·»ù´¡£º
¡¡¡¡1¡¢LOOP
¡¡¡¡statement1;
¡¡¡¡statement2;
¡¡¡¡. . .
¡¡¡¡EXIT [WHEN condition];
¡¡¡¡END LOOP;
¡¡¡¡v_ord_id s_item.ord_id%TYPE := 101;
¡¡¡¡v_counter NUMBER (2) := 1;
¡¡¡¡BEGIN
¡¡¡¡. . .
¡¡¡¡LOOP
¡¡¡¡INSERT INTO s_item (ord_id, item_id)
¡¡¡¡VALUES (v_ord_id, v_counter);
¡¡¡¡v_counter := v_counter + 1;
¡¡¡¡EXIT WHEN v_counter > 10;
¡¡¡¡END LOOP;
¡¡


Ïà¹ØÎĵµ£º

Oracle ѧϰ£ºPL/SQLÑ­Ðò½¥½øÈ«ÃæÑ§Ï°½Ì³Ì

¿Î³Ì Ò» PL/SQL »ù±¾²éѯÓëÅÅÐò
¡¡¡¡
¡¡¡¡±¾¿ÎÖØµã£º
¡¡¡¡
¡¡¡¡1¡¢Ð´SELECTÓï¾ä½øÐÐÊý¾Ý¿â²éѯ
¡¡¡¡
¡¡¡¡2¡¢½øÐÐÊýѧÔËËã
¡¡¡¡
¡¡¡¡3¡¢´¦Àí¿ÕÖµ
¡¡¡¡
¡¡¡¡4¡¢Ê¹ÓñðÃûALIASES
¡¡¡¡
¡¡¡¡5¡¢Á¬½ÓÁÐ
¡¡¡¡
¡¡¡¡6¡¢ÔÚSQL PLUSÖб༭»º³å£¬ÐÞ¸ÄSQL SCRIPTS
¡¡¡¡
¡¡¡¡7¡¢ORDER BY½øÐÐÅÅÐòÊä³ö¡£
¡¡¡¡
¡¡¡¡8¡¢Ê¹Ó ......

Oracle ѧϰ£ºPL/SQLÑ­Ðò½¥½øÈ«ÃæÑ§Ï°½Ì³Ì

¡¡¿Î³ÌÆß ÆäËûÊý¾Ý¿â¶ÔÏó
¡¡¡¡
¡¡¡¡SEQUENCE
¡¡¡¡
¡¡¡¡´´½¨ÊµÀý£º
¡¡¡¡
¡¡¡¡SQL> CREATE SEQUENCE s_dept_id
¡¡¡¡
¡¡¡¡2 INCREMENT BY 1
¡¡¡¡
¡¡¡¡3 START WITH 51
¡¡¡¡
¡¡¡¡4 MAXVALUE 9999999
¡¡¡¡
¡¡¡¡5 NOCACHE
¡¡¡¡
¡¡¡¡6 NOCYCLE;
¡¡¡¡
¡¡¡¡Sequence created.
¡¡¡¡
¡¡¡¡1¡¢NEXTVALºÍCURRVALµÄ ......

Oracle ѧϰ£ºPL/SQLÑ­Ðò½¥½øÈ«ÃæÑ§Ï°½Ì³Ì

 ¿Î³Ì°Ë Óû§·ÃÎÊ¿ØÖÆ
¡¡¡¡
¡¡¡¡±¾¿ÎÖØµã£º
¡¡¡¡1¡¢´´½¨Óû§
¡¡¡¡2¡¢´´½¨½ÇÉ«À´½øÐа²È«ÉèÖÃ
¡¡¡¡3¡¢Ê¹ÓÃGRANT»òREVOKE À´¿ØÖÆÈ¨ÏÞ
¡¡¡¡
¡¡¡¡×¢Ò⣺ÒÔÏÂʵÀýÖбêµã¾ùΪӢÎİë½Ç
¡¡¡¡
¡¡¡¡Ò»¡¢¸ÅÊö£º
¡¡¡¡ORACLEͨ¹ýÓû§ÃûºÍÃÜÂë½øÐÐȨÏÞ¿ØÖÆ¡£
¡¡¡¡Êý¾Ý¿â°²È«£ºÏµÍ³°²È«ºÍÊý¾Ý°²È«
¡¡¡¡ÏµÍ³È¨ÏÞ£ºÊ¹Óû§¿É ......

Oracle ѧϰ£ºPL/SQLÑ­Ðò½¥½øÈ«ÃæÑ§Ï°½Ì³Ì

¿Î³Ìʮһ ÓëORACLE SERVER½»»¥
¡¡¡¡
¡¡¡¡±¾¿ÎÖØµã£º
¡¡¡¡1¡¢ÔÚPLSQLÖгɹ¦µÄдSELECTÓï¾ä
¡¡¡¡2¡¢¶¯Ì¬ÉùÃ÷PLSQL±äÁ¿ÀàÐÍÓëSIZE
¡¡¡¡3¡¢ÔÚPLSQLÖÐдDMLÓï¾ä
¡¡¡¡4¡¢ÔÚPLSQLÖпØÖÆÊÂÎñ
¡¡¡¡5¡¢È·¶¨DML²Ù×÷µÄ½á¹û
¡¡¡¡
¡¡¡¡×¢Ò⣺ÒÔÏÂʵÀýÖбêµã¾ùΪӢÎİë½Ç
¡¡¡¡
¡¡¡¡Ò»¡¢PLSQLÖеÄSQLÓï¾ä£º
¡¡¡¡SELECT¡¢DML¡¢CO ......
© 2009 ej38.com All Rights Reserved. ¹ØÓÚE½¡ÍøÁªÏµÎÒÃÇ | Õ¾µãµØÍ¼ | ¸ÓICP±¸09004571ºÅ