oracle PL SQLѧϰ°¸Àý£¨¶þ£©
¡¾ÑµÁ·6.1¡¿¡¡Ê¹ÓÃÒþʽÓαêµÄÊôÐÔ£¬Åж϶ԹÍÔ±¹¤×ʵÄÐÞ¸ÄÊÇ·ñ³É¹¦¡£
²½Öè1£ºÊäÈëºÍÔËÐÐÒÔϳÌÐò£º
BEGIN
UPDATE emp SET sal=sal+100 WHERE empno=1234;
IF SQL%FOUND THEN
DBMS_OUTPUT.PUT_LINE('³É¹¦Ð޸ĹÍÔ±¹¤×Ê£¡');
ROLLBACK;
ELSE
DBMS_OUTPUT.PUT_LINE('Ð޸ĹÍÔ±¹¤×Êʧ°Ü£¡');
END IF;
END;
ÔËÐнá¹ûΪ£º
Ð޸ĹÍÔ±¹¤×Êʧ°Ü£¡
PL/SQL ¹ý³ÌÒѳɹ¦Íê³É¡£
²½Öè2£º½«¹ÍÔ±±àºÅ1234¸ÄΪ7788£¬ÖØÐÂÖ´ÐÐÒÔÉϳÌÐò£º
ÔËÐнá¹ûΪ£º
³É¹¦Ð޸ĹÍÔ±¹¤×Ê£¡
PL/SQL ¹ý³ÌÒѳɹ¦Íê³É¡£
˵Ã÷£º±¾ÀýÖУ¬Í¨¹ýSQL%FOUNDÊôÐÔÅжÏÐÞ¸ÄÊÇ·ñ³É¹¦£¬²¢¸ø³öÏàÓ¦ÐÅÏ¢¡£
=================================================================
¡¾ÑµÁ·7.1¡¿ ÓÃÓαêÌáÈ¡emp±íÖÐ7788¹ÍÔ±µÄÃû³ÆºÍÖ°Îñ¡£
DECLARE
v_ename VARCHAR2(10);
v_job VARCHAR2(10);
CURSOR emp_cursor IS
SELECT ename,job from emp WHERE empno=7788;
BEGIN
OPEN emp_cursor;
FETCH emp_cursor INTO v_ename,v_job;
DBMS_OUTPUT.PUT_LINE(v_ename||','||v_job);
CLOSE emp_cursor;
END;
Ö´Ðнá¹ûΪ:
SCOTT,ANALYST
PL/SQL ¹ý³ÌÒѳɹ¦Íê³É¡£?
˵Ã÷£º¸Ã³ÌÐòͨ¹ý¶¨ÒåÓαêemp_cursor£¬ÌáÈ¡²¢ÏÔʾ¹ÍÔ±7788µÄÃû³ÆºÍÖ°Îñ¡£
×÷Ϊ¶ÔÒÔÉÏÀý×ӵĸĽø£¬ÔÚÒÔÏÂѵÁ·ÖвÉÓÃÁ˼Ǽ±äÁ¿¡£
================================================================
¡¾ÑµÁ·7.2¡¿ ÓÃÓαêÌáÈ¡emp±íÖÐ7788¹ÍÔ±µÄÐÕÃû¡¢Ö°ÎñºÍ¹¤×Ê¡£
DECLARE
CURSOR emp_cursor IS SELECT ename,job,sal from emp WHERE empno=7788;
emp_record emp_cursor%ROWTYPE;
BEGIN
OPEN emp_cursor;
FETCH emp_cursor INTO emp_record;
DBMS_OUTPUT.PUT_LINE(emp_record.ename||'
Ïà¹ØÎĵµ£º
(ÊÊÓà SQL Server 2005 ÆäËû°æ±¾)
ÊÕ²Ø
SQL Server 2005 Express ÊÇ΢ÈíÌṩµÄÊý¾Ý¿âµÄµÍ¶Ë½â¾ö·½°¸,
¿ÉÃâ·ÑÈÎÒâËæ²úÆ··Ö·¢, ¿ÉÒÔÔÚXPµÈ·Çרҵ·þÎñÆ÷ϵͳϰ²×°, »¹¿ÉÒÔÔ¶³Ì·ÃÎÊ, ¶ÔÓÚСÐÍÊý¾ÝÓ¦ÓóÌÐòÒÑ×ã¹»Âú×ãÊý¾ÝʹÓÃÒªÇó.
ĬÈϰ²×°ÏÂ,SQL Server ......
Ö´ÐÐ Êý¾Ý¿â²éѯʱ£¬ÓÐÍêÕû²éѯºÍÄ£ºý²éѯ֮·Ö¡£
Ò»°ãÄ£ºýÓï¾äÈçÏ£º
SELECT ×Ö¶Î from ±í WHERE ij×Ö¶Î Like Ìõ¼þ
ÆäÖйØÓÚÌõ¼þ£¬SQLÌṩÁËËÄÖÖÆ¥Åäģʽ£º
1£¬%£º±íʾÈÎÒâ0¸ö»ò¶à¸ö×Ö·û¡£¿ÉÆ¥ÅäÈÎÒâÀàÐͺͳ¤¶ÈµÄ×Ö·û£¬ÓÐЩÇé¿öÏÂÈôÊÇÖÐÎÄ£¬ÇëÔËÓÃÁ½¸ö°Ù·ÖºÅ£¨%%£©±íʾ¡£
±ÈÈç SELECT * from [user] WHERE u_na ......
SELECT
DECODE(ÁÐ,0,'Q'1,'P',2,'O')¡¡AS ret
from dual
--·ÖÎö: µ± ÁÐ=0ʱ,½«"Q"¸³Öµ
--µ± ÁÐ =1ʱ,½«"P"¸³Öµ
--µ± ÁÐ=2ʱ,½«"O"¸³Öµ
--NVL()º¯Êý:
--NVL(ARG,VALUE)´ï±êÈç¹ûÇ°ÃæµÄARGֵΪNULLÄÇô·µ»ØµÄֵΪºóÃæµÄVALUE¶þÕß½áºÏʹÓÃ:
DECODE(NVL(±äÁ¿ ''),'','-','OK')
//·ÖÎö:
--Èô ±äÁ¿ ÊÇ·ñΪ¿Õ.ÈôΪ¿Õ¸³¸ø¿ ......
¡¾Ê¾Àý1.1¡¿ ²éѯ¹ÍÔ±±àºÅΪ7788µÄ¹ÍÔ±ÐÕÃûºÍ¹¤×Ê¡£
²½Öè1£ºÓÃSCOTT/TIGERÕË»§µÇ¼SQL*Plus¡£
²½Öè2£ºÔÚÊäÈëÇøÊäÈëÒÔϳÌÐò£º
/*ÕâÊÇÒ»¸ö¼òµ¥µÄʾÀý³ÌÐò*/
SET SERVEROUTPUT ON
DECLARE--¶¨Ò岿·Ö±êʶ
v_name VARCHAR2 ......